pike.git / src / las.c

version» Context lines:

pike.git/src/las.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: las.c,v 1.13 1997/01/22 05:19:45 hubbe Exp $"); + RCSID("$Id: las.c,v 1.14 1997/01/27 01:19:01 hubbe Exp $");      #include "language.h"   #include "interpret.h"   #include "las.h"   #include "array.h"   #include "object.h"   #include "stralloc.h"   #include "dynamic_buffer.h"   #include "lex.h"   #include "pike_types.h"
pike.git/src/las.c:356:    return res;   }      node *mkapplynode(node *func,node *args)   {    return mknode(F_APPLY, func, args);   }      node *mkefuncallnode(char *function, node *args)   { -  struct efun *fun; +     struct pike_string *name; -  +  node *n;    name = findstring(function); -  if(!name) +  if(!name || !find_module_identifier(name))    {    my_yyerror("Internally used efun undefined: %s",function);    return mkintnode(0);    } -  -  fun = lookup_efun(name); -  if(!fun) -  { -  my_yyerror("Internally used efun undefined: %s",function); -  return mkintnode(0); +  n=mkapplynode(mksvaluenode(sp-1), args); +  pop_stack(); +  return n;   } -  return mkapplynode(mksvaluenode(&fun->function), args); - } +       node *mkopernode(char *oper_id, node *arg1, node *arg2)   {    if(arg1 && arg2)    arg1=mknode(F_ARG_LIST,arg1,arg2);       return mkefuncallnode(oper_id, arg1);   }      node *mklocalnode(int var)