pike.git / src / language.yacc

version» Context lines:

pike.git/src/language.yacc:1:   /* -*- c -*-   || This file is part of Pike. For copyright information see COPYRIGHT.   || Pike is distributed under GPL, LGPL and MPL. See the file COPYING   || for more information. - || $Id: language.yacc,v 1.340 2005/10/14 08:53:50 grubba Exp $ + || $Id: language.yacc,v 1.341 2006/02/25 11:10:47 grubba Exp $   */      %pure_parser      %token TOK_ARROW      /*    * Basic value pushing    */   %token TOK_CONSTANT TOK_FLOAT TOK_STRING
pike.git/src/language.yacc:106:   %left TOK_LSH TOK_RSH   %left '+' '-'   %left '*' '%' '/'   %right TOK_NOT '~'   %nonassoc TOK_INC TOK_DEC      %{   /* This is the grammar definition of Pike. */      #include "global.h" - RCSID("$Id: language.yacc,v 1.340 2005/10/14 08:53:50 grubba Exp $"); + RCSID("$Id: language.yacc,v 1.341 2006/02/25 11:10:47 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:4064:    if(f->variable[e].name==str)    {    struct compiler_frame *q=Pike_compiler->compiler_frame;       while(q!=f)    {    q->lexical_scope|=SCOPE_SCOPED;    q=q->previous;    }    -  if(depth) +  if(depth) {    q->lexical_scope|=SCOPE_SCOPE_USED;       if(q->min_number_of_locals < e+1)    q->min_number_of_locals = e+1; -  +  }       if(f->variable[e].def) {    /*fprintf(stderr, "Found prior definition of \"%s\"\n", str->str); */    return copy_node(f->variable[e].def);    }       return mklocalnode(e,depth);    }    }    if(!(f->lexical_scope & SCOPE_LOCAL)) return 0;