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

Diff of /gcl/o/funlink.c

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

revision 1.25 by camm, Fri Jun 10 15:24:44 2005 UTC revision 1.26 by camm, Wed Jun 22 01:37:26 2005 UTC
# Line 1311  call_proc(object sym, int setf, void **l Line 1311  call_proc(object sym, int setf, void **l
1311          {while(i < nargs)          {while(i < nargs)
1312              {enum ftype typ=SFUN_NEXT_TYPE(argd);              {enum ftype typ=SFUN_NEXT_TYPE(argd);
1313                vs_push((typ==f_object? va_arg(ll,object):                vs_push((typ==f_object? va_arg(ll,object):
1314                         make_fixnum(va_arg(ll,fixnum))));                         (typ==f_fixnum ? make_fixnum(va_arg(ll,fixnum)) :
1315                            make_integer(va_arg(ll,GEN)))));
1316               i++;}}               i++;}}
1317      }      }
1318    
# Line 1321  call_proc(object sym, int setf, void **l Line 1322  call_proc(object sym, int setf, void **l
1322        vs_top=base;        vs_top=base;
1323          /* vs_base=oldbase;          /* vs_base=oldbase;
1324        The caller won't expect us to restore these.  */        The caller won't expect us to restore these.  */
1325       return((result_type==f_object? vs_base[0] : (object)fix(vs_base[0])));       return((result_type==f_object? vs_base[0] : (result_type==f_fixnum ? (object)fix(vs_base[0]) : (object)otoi(vs_base[0]))));
1326     }     }
1327  }  }
1328    
# Line 1446  call_proc_new(object sym, int setf,void Line 1447  call_proc_new(object sym, int setf,void
1447              object _xx;              object _xx;
1448              if (typ==f_object)              if (typ==f_object)
1449                _xx=i ? va_arg(ll,object) : first;                _xx=i ? va_arg(ll,object) : first;
1450              else {              else if (typ==f_fixnum) {
1451                long _yy;                fixnum _yy;
1452                _yy=i ? va_arg(ll,fixnum) : (fixnum)first;                _yy=i ? va_arg(ll,fixnum) : (fixnum)first;
1453                _xx=make_fixnum(_yy);                _xx=make_fixnum(_yy);
1454                } else {
1455                  GEN _yy;
1456                  _yy=i ? va_arg(ll,GEN) : (GEN)first;
1457                  _xx=make_integer(_yy);
1458              }              }
1459              vs_push(_xx);              vs_push(_xx);
1460              i++;              i++;
# Line 1463  call_proc_new(object sym, int setf,void Line 1468  call_proc_new(object sym, int setf,void
1468       vs_top=base;       vs_top=base;
1469       /* vs_base=oldbase;       /* vs_base=oldbase;
1470          The caller won't expect us to restore these.  */          The caller won't expect us to restore these.  */
1471       return((result_type==f_object? vs_base[0] : (object)fix(vs_base[0])));       return((result_type==f_object? vs_base[0] : (result_type==f_fixnum ? (object)fix(vs_base[0]) : (object)otoi(vs_base[0]))));
1472     }     }
1473  }  }
1474    

Legend:
Removed from v.1.25  
changed lines
  Added in v.1.26

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