pike.git / src / language.y

version» Context lines:

pike.git/src/language.y:5:   \*/   %pure_parser      /*    * These values are used by the stack machine, and can not be directly    * called from LPC.    */   %token F_ADD_256 F_ADD_512 F_ADD_768 F_ADD_1024 F_ADD_256X   %token F_PREFIX_256 F_PREFIX_512 F_PREFIX_768 F_PREFIX_1024   %token F_PREFIX_CHARX256 F_PREFIX_WORDX256 F_PREFIX_24BITX256 - %token F_POP_VALUE F_POP_N_ELEMS F_MARK F_CALL_LFUN + %token F_POP_VALUE F_POP_N_ELEMS F_MARK F_MARK2 + %token F_CALL_LFUN F_CALL_LFUN_AND_POP      %token F_BRANCH F_BRANCH_WHEN_ZERO F_BRANCH_WHEN_NON_ZERO   %token F_BRANCH_WHEN_LT F_BRANCH_WHEN_GT   %token F_BRANCH_WHEN_LE F_BRANCH_WHEN_GE   %token F_BRANCH_WHEN_EQ F_BRANCH_WHEN_NE   %token F_INC_LOOP F_DEC_LOOP   %token F_INC_NEQ_LOOP F_DEC_NEQ_LOOP      %token F_INDEX F_INDIRECT   %token F_LTOSVAL F_LTOSVAL2
pike.git/src/language.y:27:   %token F_RANGE F_COPY_VALUE      /*    * Basic value pushing    */   %token F_LFUN F_GLOBAL F_LOCAL   %token F_GLOBAL_LVALUE F_LOCAL_LVALUE   %token F_CLEAR_LOCAL   %token F_CONSTANT F_FLOAT F_STRING   %token F_NUMBER F_NEG_NUMBER F_CONST_1 F_CONST0 F_CONST1 F_BIGNUM -  +    /*    * These are the predefined functions that can be accessed from LPC.    */      %token F_INC F_DEC F_POST_INC F_POST_DEC F_INC_AND_POP F_DEC_AND_POP   %token F_INC_LOCAL F_INC_LOCAL_AND_POP F_POST_INC_LOCAL   %token F_DEC_LOCAL F_DEC_LOCAL_AND_POP F_POST_DEC_LOCAL - %token F_RETURN F_DUMB_RETURN F_RETURN_0 + %token F_RETURN F_DUMB_RETURN F_RETURN_0 F_THROW_ZERO      %token F_ASSIGN F_ASSIGN_AND_POP   %token F_ASSIGN_LOCAL F_ASSIGN_LOCAL_AND_POP   %token F_ASSIGN_GLOBAL F_ASSIGN_GLOBAL_AND_POP   %token F_ADD F_SUBTRACT   %token F_MULTIPLY F_DIVIDE F_MOD      %token F_LT F_GT F_EQ F_GE F_LE F_NE   %token F_NEGATE F_NOT F_COMPL   %token F_AND F_OR F_XOR   %token F_LSH F_RSH   %token F_LAND F_LOR      %token F_SWITCH F_SSCANF F_CATCH   %token F_CAST   %token F_FOREACH    -  + %token F_SIZEOF F_SIZEOF_LOCAL +    /*    * These are token values that needn't have an associated code for the    * compiled file    */      %token F_MAX_OPCODE   %token F_ADD_EQ   %token F_AND_EQ   %token F_APPLY   %token F_ARG_LIST
pike.git/src/language.y:1031:    ;      comma_expr_or_zero: /* empty */ { $$=mkintnode(0); }    | comma_expr    ;      comma_expr_or_maxint: /* empty */ { $$=mkintnode(0x7fffffff); }    | comma_expr    ;    - gauge: F_GAUGE '(' unused ')' + gauge: F_GAUGE catch_arg    {    $$=mkopernode("`-",    mkopernode("`-",    mknode(F_INDEX,mkefuncallnode("rusage",0),    mkintnode(GAUGE_RUSAGE_INDEX)), -  mknode(F_ARG_LIST,$3, +  mknode(F_ARG_LIST,$2,    mknode(F_INDEX,mkefuncallnode("rusage",0),    mkintnode(GAUGE_RUSAGE_INDEX)))),0);    } ;      typeof: F_TYPEOF '(' expr0 ')'    {    node *tmp;    tmp=mknode(F_ARG_LIST,$3,0);    $$=mkstrnode(describe_type($3->type));    free_node(tmp);