pike.git / src / docode.c

version» Context lines:

pike.git/src/docode.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: docode.c,v 1.102 2001/02/25 17:55:07 hubbe Exp $"); + RCSID("$Id: docode.c,v 1.103 2001/05/15 00:03:25 hubbe Exp $");   #include "las.h"   #include "program.h"   #include "pike_types.h"   #include "stralloc.h"   #include "interpret.h"   #include "constants.h"   #include "array.h"   #include "pike_macros.h"   #include "pike_error.h"   #include "pike_memory.h"
pike.git/src/docode.c:402:    while(--depth>=0) f=f->previous;    return f;   }      int do_lfun_call(int id,node *args)   {    emit0(F_MARK);    PUSH_CLEANUP_FRAME(do_pop_mark, 0);    do_docode(args,0);   #if 1 -  if(id == Pike_compiler->compiler_frame->current_function_number) +  if(id == Pike_compiler->compiler_frame->current_function_number && +  !(Pike_compiler->compiler_frame->lexical_scope & SCOPE_SCOPE_USED))    {    int n=count_args(args);    if(n == Pike_compiler->compiler_frame->num_args)    {    if(Pike_compiler->compiler_frame->is_inline)    {    Pike_compiler->compiler_frame->recur_label=do_jump(F_RECUR,    Pike_compiler->compiler_frame->recur_label);    }else{    emit1(F_COND_RECUR,id);