pike.git / src / lex.c

version» Context lines:

pike.git/src/lex.c:1:   /*\   ||| This file a part of Pike, and is copyright by Fredrik Hubinette   ||| Pike is distributed as GPL (General Public License)   ||| See the files COPYING and DISCLAIMER for more information.   \*/   /**/   #include "global.h" - RCSID("$Id: lex.c,v 1.69 2000/04/18 18:47:31 grubba Exp $"); + RCSID("$Id: lex.c,v 1.70 2000/04/18 19:09:17 grubba Exp $");   #include "language.h"   #include "array.h"   #include "lex.h"   #include "stralloc.h"   #include "dynamic_buffer.h"   #include "constants.h"   #include "hashtable.h"   #include "stuff.h"   #include "pike_memory.h"   #include "interpret.h"
pike.git/src/lex.c:105:   { "/=", F_DIV_EQ,0 },   { "<", F_LT,0 },   { "<<", F_LSH,0 },   { "<<=", F_LSH_EQ,0 },   { "<=", F_LE,0 },   { "==", F_EQ,0 },   { ">", F_GT,0 },   { ">=", F_GE,0 },   { ">>", F_RSH,0 },   { ">>=", F_RSH_EQ,0 }, - { "@", F_PUSH_ARRAY,0 }, +    { "^", F_XOR,0 },   { "^=", F_XOR_EQ,0 },   { "arg+=1024", F_PREFIX_1024,0 },   { "arg+=256", F_PREFIX_256,0 },   { "arg+=256*X", F_PREFIX_CHARX256,0 },   { "arg+=256*XX", F_PREFIX_WORDX256,0 },   { "arg+=256*XXX", F_PREFIX_24BITX256,0 },   { "arg+=512", F_PREFIX_512,0 },   { "arg+=768", F_PREFIX_768,0 },   { "assign and pop", F_ASSIGN_AND_POP,0 },
pike.git/src/lex.c:129:   { "assign local and pop", F_ASSIGN_LOCAL_AND_POP, I_HASARG },   { "assign", F_ASSIGN,0 },   { "break", F_BREAK,0 },   { "case", F_CASE,0 },   { "continue", F_CONTINUE,0 },   { "default", F_DEFAULT,0 },   { "do-while", F_DO,0 },   { "dumb return", F_DUMB_RETURN,0 },   { "for", F_FOR,0 },   { "index", F_INDEX,0 }, - { "->x", F_ARROW, I_HASARG }, +    { "clear string subtype", F_CLEAR_STRING_SUBTYPE, 0 },      { "branch", F_BRANCH, I_ISJUMP },   { "branch non zero", F_BRANCH_WHEN_NON_ZERO, I_ISJUMP },   { "branch if local", F_BRANCH_IF_LOCAL, I_HASARG },   { "branch if !local", F_BRANCH_IF_NOT_LOCAL, I_HASARG },   { "branch if ! local->x", F_BRANCH_IF_NOT_LOCAL_ARROW, I_HASARG },   { "branch when zero", F_BRANCH_WHEN_ZERO, I_ISJUMP },   { "branch if <", F_BRANCH_WHEN_LT, I_ISJUMP },   { "branch if >", F_BRANCH_WHEN_GT, I_ISJUMP },
pike.git/src/lex.c:204:   { "clear local", F_CLEAR_LOCAL, I_HASARG },   { "clear 2 local", F_CLEAR_2_LOCAL, I_HASARG },   { "clear 4 local", F_CLEAR_4_LOCAL, I_HASARG },   { "++local", F_INC_LOCAL, I_HASARG },   { "++local and pop", F_INC_LOCAL_AND_POP, I_HASARG },   { "local++", F_POST_INC_LOCAL, I_HASARG },   { "--local", F_DEC_LOCAL, I_HASARG },   { "--local and pop", F_DEC_LOCAL_AND_POP, I_HASARG },   { "local--", F_POST_DEC_LOCAL, I_HASARG },   { "throw(0)", F_THROW_ZERO,0 }, - { "local index", F_LOCAL_INDEX, I_HASARG }, - { "local local index", F_LOCAL_LOCAL_INDEX, I_HASARG }, +    { "int index", F_POS_INT_INDEX, I_HASARG },   { "-int index", F_NEG_INT_INDEX, I_HASARG },   { "apply and pop", F_APPLY_AND_POP, I_HASARG },   { "2 locals", F_2_LOCALS, I_HASARG },   { "byte", F_BYTE, I_HASARG },   { "nop", F_NOP,0 },   { "add integer", F_ADD_INT, I_HASARG },   { "add -integer", F_ADD_NEG_INT, I_HASARG },   { "mark & call", F_MARK_APPLY, I_HASARG },   { "mark, call & pop", F_MARK_APPLY_POP, I_HASARG },   { "apply and return", F_APPLY_AND_RETURN, I_HASARG },   { "apply, assign local and pop", F_APPLY_ASSIGN_LOCAL_AND_POP, I_HASARG },   { "apply & assign local", F_APPLY_ASSIGN_LOCAL, I_HASARG },   { "call lfun & return", F_CALL_LFUN_AND_RETURN, I_HASARG },   { "call function", F_CALL_FUNCTION, 0 },   { "call function & return", F_CALL_FUNCTION_AND_RETURN, 0 },   { "+= and pop", F_ADD_TO_AND_POP, 0 },   { "local=local;", F_LOCAL_2_LOCAL, I_HASARG },   { "local=global;", F_GLOBAL_2_LOCAL, I_HASARG },   { "global=local;", F_LOCAL_2_GLOBAL, I_HASARG }, - { "local->x", F_LOCAL_ARROW, I_HASARG }, - { "global[local]", F_GLOBAL_LOCAL_INDEX, I_HASARG }, +    };      struct instr instrs[F_MAX_INSTR - F_OFFSET];      struct reserved   {    struct hash_entry link;    int token;   };