rem: unsigned char  *p;
add: char  *p;
context: inline unsigned char *run_sub( struct cpl_interpreter *intr ){	unsigned char  *p;	unsigned short offset;	unsigned short attr_name;	int i;	/* sanity check */	if (NR_OF_KIDS(intr->ip)!=0) {		LOG(L_ERR,"ERROR:cpl_c:run_sub: SUB node doesn't suppose to have any "			"sub-nodes. Found %d!\n",NR_OF_KIDS(intr->ip));		goto script_error;	}	/* check the number of attr */	i = NR_OF_ATTR( intr->ip );	if (i!=1) {		LOG(L_ERR,"ERROR:cpl_c:run_sub: incorrect nr. of attr. %d (<>1) in "			"SUB node\n",i);		goto script_error;	}	/* get attr's name */	p = ATTR_PTR(intr->ip);	get_basic_attr( p, attr_name, offset, intr, script_error);	if (attr_name!=REF_ATTR) {		LOG(L_ERR,"ERROR:cpl_c:run_sub: invalid attr. %d (expected %d)in "			"SUB node\n", attr_name, REF_ATTR);		goto script_error;	}	/* make the jump */	p = intr->ip - offset;	/* check the destination pointer -> are we still inside the buffer ;-) */	if (((char*)p)<intr->script.s) {		LOG(L_ERR,"ERROR:cpl_c:run_sub: jump offset lower than the script "			"beginning -> underflow!\n");		goto script_error;	}	check_overflow_by_ptr( p+SIMPLE_NODE_SIZE(intr->ip), intr, script_error);	/* check to see if we hit a subaction node */	if ( NODE_TYPE(p)!=SUBACTION_NODE ) {		LOG(L_ERR,"ERROR:cpl_c:run_sub: sub. jump hit a nonsubaction node!\n");		goto script_error;	}	if ( NR_OF_ATTR(p)!=0 ) {		LOG(L_ERR,"ERROR:cpl_c:run_sub: inavlid subaction node reached "		"(attrs=%d); expected (0)!\n",NR_OF_ATTR(p));		goto script_error;	}	return get_first_child(p);script_error:	return CPL_SCRIPT_ERROR;}