pike.git
/
src
/
modules
/
Parser
/
parser.c
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/src/modules/Parser/parser.c:116:
*! @[Parser], @[Parser.C], @[Parser.Pike], @[Parser.RCS], *! @[Parser.HTML], @[Parser.XML] */ static void parser_magic_index(INT32 args) { int i; if (args!=1) Pike_error("Parser.`[]: Too few or too many arguments\n");
-
if (sp[-1]
.type
!=T_STRING)
+
if (
TYPEOF(
sp[-1]
)
!=
T_STRING)
Pike_error("Parser.`[]: Illegal type of argument\n"); for (i=0; i<(int)NELEM(submagic)-1; i++) if (sp[-1].u.string==submagic[i].ps) { #ifdef PIKE_DEBUG struct svalue *save_sp; #endif pop_stack();
pike.git/src/modules/Parser/parser.c:151:
ref_push_object(submagic[i].o); return; } stack_dup(); ref_push_object(fp->current_object); stack_swap(); f_arrow(2);
-
if (sp[-1]
.type
==T_INT)
+
if (
TYPEOF(
sp[-1]
)
==
T_INT)
{ pop_stack(); stack_dup(); push_constant_text("_Parser_"); stack_swap(); f_add(2); SAFE_APPLY_MASTER("resolv",1); }
-
if (sp[-1]
.type
==T_INT)
+
if (
TYPEOF(
sp[-1]
)
==
T_INT)
{ pop_stack(); stack_dup(); push_constant_text("_Parser"); SAFE_APPLY_MASTER("resolv",1); stack_swap();
-
if(sp[-2]
.type
== T_INT)
+
if(
TYPEOF(
sp[-2]
)
== T_INT)
{ pop_stack(); }else{ f_index(2); } } stack_swap(); pop_stack(); }