pike.git / src / language.yacc

version» Context lines:

pike.git/src/language.yacc:149:   %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.25 1997/02/18 05:13:34 hubbe Exp $"); + RCSID("$Id: language.yacc,v 1.26 1997/03/01 02:37:01 hubbe 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:1123:    $$=mknode(F_ARROW,$1,mkstrnode($3));    free_string($3);    }    ;      idents: low_idents    | idents '.' F_IDENTIFIER    {    $$=index_node($1, $3);    free_node($1); -  free_string($3); -  free_string(last_identifier); +  if(last_identifier) free_string(last_identifier);    copy_shared_string(last_identifier, $3); -  +  free_string($3);    }    ;      low_idents: F_IDENTIFIER    {    int i;    struct efun *f;    if(last_identifier) free_string(last_identifier);    copy_shared_string(last_identifier, $1);    if((i=islocal($1))>=0)