--- gforth/fflib.fs 2008/02/12 20:28:51 1.19 +++ gforth/fflib.fs 2008/07/29 09:24:31 1.25 @@ -1,6 +1,6 @@ \ lib.fs shared library support package 16aug03py -\ Copyright (C) 1995,1996,1997,1998,2000,2003,2005,2006,2007 Free Software Foundation, Inc. +\ Copyright (C) 1995,1996,1997,1998,2000,2003,2005,2006,2007,2008 Free Software Foundation, Inc. \ This file is part of Gforth. @@ -18,10 +18,14 @@ \ along with this program. If not, see http://www.gnu.org/licenses/. \ replacements for former primitives -require libcc.fs +c-library fflib +s" avcall" add-lib +s" callback" add-lib \c #include \c #include +\c extern Cell *gforth_RP; +\c extern unsigned char *gforth_LP; \c static av_alist alist; \c static va_alist gforth_clist; \c static float frv; @@ -29,8 +33,6 @@ require libcc.fs \c static double drv; \c static long long llrv; \c static void * prv; -\c static Cell *gforth_RP; -\c static char *gforth_LP; \c typedef void *Label; \c typedef Label *Xt; \c Label *gforth_engine(Xt *ip, Cell *sp, Cell *rp0, Float *fp, char *lp); @@ -126,6 +128,7 @@ c-function va-return-longlong1 va_return c-function va-return-float1 va_return_float1 r -- void \c #define va_return_double1(r) va_return_double(gforth_clist,r) c-function va-return-double1 va_return_double1 r -- void +end-c-library : av-int-r 2r> >r av-int ; : av-float-r f@local0 lp+ av-float ;