/[gcl]/gcl/o/nfunlink.c
ViewVC logotype

Diff of /gcl/o/nfunlink.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.9 by camm, Fri Jan 7 17:58:34 2005 UTC revision 1.10 by camm, Fri Jun 10 15:24:44 2005 UTC
# Line 183  IapplyVector(object fun, int nargs, obje Line 183  IapplyVector(object fun, int nargs, obje
183     starting at BASE.  This pushes on the CallHist, and puts the args onto     starting at BASE.  This pushes on the CallHist, and puts the args onto
184     the arg stack, so that debuggers may examine them.  It sets     the arg stack, so that debuggers may examine them.  It sets
185     fcall.nvalues appropriately. */     fcall.nvalues appropriately. */
186  { object res,*abase;  { object res=OBJNULL,*abase=NULL;
187    int i;    int i=0;
188    object *oldtop = vs_top;    object *oldtop = vs_top;
189    unsigned int  atypes;    unsigned int  atypes=0;
190    if (oldtop == base) vs_top += nargs;    if (oldtop == base) vs_top += nargs;
191    else    else
192      { object *b = base;      { object *b = base;
# Line 207  IapplyVector(object fun, int nargs, obje Line 207  IapplyVector(object fun, int nargs, obje
207        FEtoo_many_arguments(base,vs_top);        FEtoo_many_arguments(base,vs_top);
208      atypes = F_TYPES(fun->sfn.sfn_argd) >> F_TYPE_WIDTH;      atypes = F_TYPES(fun->sfn.sfn_argd) >> F_TYPE_WIDTH;
209      if (atypes==0) {abase = base;}      if (atypes==0) {abase = base;}
210      else { abase = alloca(nargs*sizeof(object));      else { abase = ZALLOCA(nargs*sizeof(object));
211             assert(abase);             assert(abase);
212             for (i=0; i < nargs ; i++, atypes >>= F_TYPE_WIDTH)             for (i=0; i < nargs ; i++, atypes >>= F_TYPE_WIDTH)
213               { object next = base[i];               { object next = base[i];

Legend:
Removed from v.1.9  
changed lines
  Added in v.1.10

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26