pike.git / src / language.yacc

version» Context lines:

pike.git/src/language.yacc:150:   %left F_LSH F_RSH   %left '+' '-'   %left '*' '%' '/'   %right F_NOT '~'   %nonassoc F_INC F_DEC      %{   /* This is the grammar definition of Pike. */      #include "global.h" - RCSID("$Id: language.yacc,v 1.54 1998/03/04 16:43:08 grubba Exp $"); + RCSID("$Id: language.yacc,v 1.55 1998/04/20 19:27:05 grubba Exp $");   #ifdef HAVE_MEMORY_H   #include <memory.h>   #endif      #include "interpret.h"   #include "array.h"   #include "object.h"   #include "stralloc.h"   #include "las.h"   #include "interpret.h"
pike.git/src/language.yacc:1192:    copy_shared_string(last_identifier, $1);    if((i=islocal($1))>=0)    {    $$=mklocalnode(i);    }else if((i=isidentifier($1))>=0){    $$=mkidentifiernode(i);    }else if(find_module_identifier($1)){    $$=mkconstantsvaluenode(sp-1);    pop_stack();    }else{ -  $$=0; +  $$ = 0;    if(!num_parse_error)    {    if( get_master() )    {    reference_shared_string($1);    push_string($1);    reference_shared_string(current_file);    push_string(current_file);    SAFE_APPLY_MASTER("resolv", 2);       if(throw_value.type == T_STRING)    {    my_yyerror("%s",throw_value.u.string->str); -  +  $$ = mkintnode(0);    }    else if(IS_ZERO(sp-1) && sp[-1].subtype==1)    {    my_yyerror("'%s' undefined.", $1->str); -  +  $$ = mkintnode(0);    }else{ -  $$=mkconstantsvaluenode(sp-1); +  $$ = mkconstantsvaluenode(sp-1);    }    pop_stack();    }else{    my_yyerror("'%s' undefined.", $1->str); -  +  $$ = mkintnode(0);    }    } else { -  $$=mkintnode(0); +  $$ = mkintnode(0);    }    }    free_string($1);    }    | F_PREDEF F_COLON_COLON F_IDENTIFIER    {    struct svalue tmp;    node *tmp2;    tmp.type=T_MAPPING;   #ifdef __CHECKER__