1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-20 03:30:27 +02:00

Move subr snarfing macros to gsubr.h.

* libguile/snarf.h: Remove gsubr include and subr snarfers.
* libguile/gsubr.h (SCM_DEFINE_GSUBR, SCM_DEFINE, SCM_PRIMITIVE_GENERIC):
  (SCM_DEFINE_PUBLIC, SCM_PROC, SCM_REGISTER_PROC, SCM_GPROC): Move
  here.
* libguile/alist.c:
* libguile/array-map.c:
* libguile/arrays.c:
* libguile/async.c:
* libguile/atomic.c:
* libguile/backtrace.c:
* libguile/bitvectors.c:
* libguile/boolean.c:
* libguile/bytevectors.c:
* libguile/chars.c:
* libguile/continuations.c:
* libguile/control.c:
* libguile/debug-malloc.c:
* libguile/debug.c:
* libguile/deprecation.c:
* libguile/dynl.c:
* libguile/eq.c:
* libguile/error.c:
* libguile/error.h:
* libguile/eval.c:
* libguile/evalext.c:
* libguile/expand.c:
* libguile/extensions.c:
* libguile/fdes-finalizers.c:
* libguile/feature.c:
* libguile/filesys.c:
* libguile/finalizers.c:
* libguile/fluids.c:
* libguile/foreign-object.c:
* libguile/foreign.c:
* libguile/fports.c:
* libguile/frames.c:
* libguile/gc.c:
* libguile/generalized-arrays.c:
* libguile/generalized-vectors.c:
* libguile/gettext.c:
* libguile/guardians.c:
* libguile/hash.c:
* libguile/hashtab.c:
* libguile/hooks.c:
* libguile/i18n.c:
* libguile/instructions.c:
* libguile/intrinsics.c:
* libguile/ioext.c:
* libguile/keywords.c:
* libguile/list.c:
* libguile/load.c:
* libguile/loader.c:
* libguile/macros.c:
* libguile/memoize.c:
* libguile/modules.c:
* libguile/net_db.c:
* libguile/numbers.c:
* libguile/objprop.c:
* libguile/pairs.c:
* libguile/poll.c:
* libguile/ports.c:
* libguile/posix.c:
* libguile/print.c:
* libguile/procs.c:
* libguile/programs.c:
* libguile/promises.c:
* libguile/r6rs-ports.c:
* libguile/random.c:
* libguile/rdelim.c:
* libguile/read.c:
* libguile/regex-posix.c:
* libguile/rw.c:
* libguile/scmsigs.c:
* libguile/simpos.c:
* libguile/smob.c:
* libguile/socket.c:
* libguile/sort.c:
* libguile/srcprop.c:
* libguile/srfi-1.c:
* libguile/srfi-13.c:
* libguile/srfi-14.c:
* libguile/srfi-4.c:
* libguile/srfi-60.c:
* libguile/stackchk.c:
* libguile/stacks.c:
* libguile/stime.c:
* libguile/strings.c:
* libguile/strorder.c:
* libguile/strports.c:
* libguile/struct.c:
* libguile/symbols.c:
* libguile/syntax.c:
* libguile/threads.c:
* libguile/throw.c:
* libguile/trees.c:
* libguile/unicode.c:
* libguile/values.c:
* libguile/variable.c:
* libguile/vectors.c:
* libguile/version.c:
* libguile/vm.c:
* libguile/vports.c:
* libguile/weak-table.c:
* libguile/weak-vector.c: Add gsubr includes.
This commit is contained in:
Andy Wingo 2018-06-20 09:04:55 +02:00
parent c376e99ff9
commit bf15afa6bf
102 changed files with 182 additions and 76 deletions

View file

@ -24,6 +24,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/boolean.h"
#include "libguile/eq.h"
#include "libguile/list.h"

View file

@ -29,6 +29,7 @@
#include <string.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/strings.h"

View file

@ -31,6 +31,7 @@
#include "verify.h"
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/__scm.h"

View file

@ -24,6 +24,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/atomics-internal.h"
#include "libguile/eval.h"

View file

@ -23,6 +23,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/extensions.h"
#include "libguile/ports.h"
#include "libguile/atomics-internal.h"

View file

@ -26,6 +26,7 @@
#include <ctype.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/boolean.h"
#include <unistd.h>

View file

@ -26,6 +26,7 @@
#include <string.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/__scm.h"

View file

@ -24,6 +24,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/boolean.h"
#include "libguile/tags.h"

View file

@ -37,6 +37,7 @@
#include <gmp.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/dynwind.h"
#include "libguile/extensions.h"
#include "libguile/bytevectors.h"

View file

@ -30,6 +30,7 @@
#include <unictype.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/boolean.h"
#include "libguile/chars.h"
#include "libguile/numbers.h"

View file

@ -31,6 +31,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/async.h"

View file

@ -23,6 +23,7 @@
#include <alloca.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/control.h"
#include "libguile/extensions.h"

View file

@ -24,6 +24,7 @@
#include <stdio.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/alist.h"
#include "libguile/numbers.h"
#include "libguile/strings.h"

View file

@ -36,6 +36,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/async.h"
#include "libguile/eval.h"
#include "libguile/list.h"

View file

@ -28,6 +28,7 @@
#include <stdarg.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/deprecation.h"

View file

@ -51,6 +51,7 @@ maybe_drag_in_eprintf ()
#include <string.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/libpath.h"
#include "libguile/dynl.h"
#include "libguile/smob.h"

View file

@ -28,6 +28,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/boolean.h"
#include "libguile/array-map.h"
#include "libguile/async.h"

View file

@ -29,6 +29,7 @@
#include <errno.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/async.h"
#include "libguile/dynwind.h"
#include "libguile/list.h"

View file

@ -36,9 +36,12 @@ SCM_API SCM scm_misc_error_key;
/* Snarfing for docs may override SCM_ASSERT; see snarf.h. */
#ifndef SCM_ASSERT
#define SCM_ASSERT(_cond, _arg, _pos, _subr) \
do { if (SCM_UNLIKELY (!(_cond))) \
scm_wrong_type_arg (_subr, _pos, _arg); } while (0)
#endif
#define SCM_ASSERT_TYPE(_cond, _arg, _pos, _subr, _msg) \
do { if (SCM_UNLIKELY (!(_cond))) \
scm_wrong_type_arg_msg(_subr, _pos, _arg, _msg); } while (0)

View file

@ -27,6 +27,7 @@
#include <stdarg.h>
#include "libguile/__scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/_scm.h"

View file

@ -24,6 +24,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/eval.h"
#include "libguile/list.h"
#include "libguile/fluids.h"

View file

@ -24,6 +24,7 @@
#endif
#include "libguile/__scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/_scm.h"

View file

@ -1,6 +1,7 @@
/* extensions.c - registering and loading extensions.
*
* Copyright (C) 2001, 2006, 2009, 2010, 2011 Free Software Foundation, Inc.
* Copyright (C) 2001,2006,2009-2011,2018
* Free Software Foundation, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
@ -25,6 +26,7 @@
#include <string.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/dynl.h"
#include "libguile/dynwind.h"
#include "libguile/extensions.h"

View file

@ -22,6 +22,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/extensions.h"

View file

@ -28,6 +28,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/strings.h"
#include "libguile/fluids.h"

View file

@ -80,6 +80,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/async.h"

View file

@ -35,6 +35,7 @@
#include "libguile/bdw-gc.h"
#include "libguile/finalizers.h"
#include "libguile/gc.h"
#include "libguile/gsubr.h"
#include "libguile/init.h"
#include "libguile/threads.h"

View file

@ -25,6 +25,7 @@
#include <string.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/alist.h"
#include "libguile/atomics-internal.h"

View file

@ -28,6 +28,7 @@
#include "libguile/finalizers.h"
#include "libguile/foreign-object.h"
#include "libguile/goops.h"
#include "libguile/gsubr.h"
#include "libguile/list.h"
#include "libguile/numbers.h"
#include "libguile/procs.h"

View file

@ -29,6 +29,7 @@
#include <errno.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/boolean.h"
#include "libguile/bytevectors.h"
#include "libguile/dynwind.h"

View file

@ -47,6 +47,7 @@
#include <full-write.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/async.h"

View file

@ -23,6 +23,7 @@
#include <stdlib.h>
#include <string.h>
#include "_scm.h"
#include "libguile/gsubr.h"
#include "boolean.h"
#include "eval.h"
#include "extensions.h"

View file

@ -33,6 +33,7 @@
#include <math.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/eval.h"
#include "libguile/stime.h"
#include "libguile/stackchk.h"

View file

@ -28,6 +28,7 @@
#include <string.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/__scm.h"
#include "libguile/array-handle.h"

View file

@ -1,5 +1,5 @@
/* Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2004,
* 2005, 2006, 2009, 2010, 2011, 2012, 2013, 2014 Free Software Foundation, Inc.
/* Copyright (C) 1995-1998,2000-2006,2009-2014,2018
* Free Software Foundation, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
@ -25,6 +25,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/__scm.h"
#include "libguile/generalized-vectors.h"

View file

@ -22,6 +22,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/feature.h"
#include "libguile/strings.h"
#include "libguile/numbers.h"

View file

@ -3,8 +3,8 @@
#ifndef SCM_GSUBR_H
#define SCM_GSUBR_H
/* Copyright (C) 1995, 1996, 1998, 2000, 2001, 2006, 2008, 2009,
* 2010, 2011, 2013, 2015 Free Software Foundation, Inc.
/* Copyright (C) 1995-1996,1998,2000-2001,2006,2008,2009-2011,2013,2015,2018
* Free Software Foundation, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
@ -25,6 +25,7 @@
#include "libguile/__scm.h"
#include "libguile/snarf.h"
@ -72,6 +73,77 @@ SCM_API SCM scm_c_define_gsubr_with_generic (const char *name,
int req, int opt, int rst,
scm_t_subr fcn, SCM *gf);
/* Casting to a function that can take any number of arguments. */
#define SCM_FUNC_CAST_ARBITRARY_ARGS scm_t_subr
#define SCM_DEFINE_GSUBR(FNAME, PRIMNAME, REQ, OPT, VAR, ARGLIST, DOCSTRING) \
SCM_SNARF_HERE(\
SCM_UNUSED static const char s_ ## FNAME [] = PRIMNAME; \
SCM FNAME ARGLIST\
)\
SCM_SNARF_INIT(\
scm_c_define_gsubr (s_ ## FNAME, REQ, OPT, VAR, \
(SCM_FUNC_CAST_ARBITRARY_ARGS) FNAME); \
)\
SCM_SNARF_DOCS(primitive, FNAME, PRIMNAME, ARGLIST, REQ, OPT, VAR, DOCSTRING)
/* Always use the generic subr case. */
#define SCM_DEFINE SCM_DEFINE_GSUBR
#define SCM_PRIMITIVE_GENERIC(FNAME, PRIMNAME, REQ, OPT, VAR, ARGLIST, DOCSTRING) \
SCM_SNARF_HERE(\
SCM_UNUSED static const char s_ ## FNAME [] = PRIMNAME; \
static SCM g_ ## FNAME; \
SCM FNAME ARGLIST\
)\
SCM_SNARF_INIT(\
g_ ## FNAME = SCM_PACK (0); \
scm_c_define_gsubr_with_generic (s_ ## FNAME, REQ, OPT, VAR, \
(SCM_FUNC_CAST_ARBITRARY_ARGS) FNAME, \
&g_ ## FNAME); \
)\
SCM_SNARF_DOCS(primitive, FNAME, PRIMNAME, ARGLIST, REQ, OPT, VAR, DOCSTRING)
#define SCM_DEFINE_PUBLIC(FNAME, PRIMNAME, REQ, OPT, VAR, ARGLIST, DOCSTRING) \
SCM_SNARF_HERE(\
SCM_UNUSED static const char s_ ## FNAME [] = PRIMNAME; \
SCM FNAME ARGLIST\
)\
SCM_SNARF_INIT(\
scm_c_define_gsubr (s_ ## FNAME, REQ, OPT, VAR, \
(SCM_FUNC_CAST_ARBITRARY_ARGS) FNAME); \
scm_c_export (s_ ## FNAME, NULL); \
)\
SCM_SNARF_DOCS(primitive, FNAME, PRIMNAME, ARGLIST, REQ, OPT, VAR, DOCSTRING)
#define SCM_PROC(RANAME, STR, REQ, OPT, VAR, CFN) \
SCM_SNARF_HERE(SCM_UNUSED static const char RANAME[]=STR) \
SCM_SNARF_INIT(scm_c_define_gsubr (RANAME, REQ, OPT, VAR, \
(SCM_FUNC_CAST_ARBITRARY_ARGS) CFN))
#define SCM_REGISTER_PROC(RANAME, STR, REQ, OPT, VAR, CFN) \
SCM_SNARF_HERE(SCM_UNUSED static const char RANAME[]=STR) \
SCM_SNARF_INIT(scm_c_define_gsubr (RANAME, REQ, OPT, VAR, \
(SCM_FUNC_CAST_ARBITRARY_ARGS) CFN);) \
SCM_SNARF_DOCS(register, CFN, STR, (), REQ, OPT, VAR, \
"implemented by the C function \"" #CFN "\"")
#define SCM_GPROC(RANAME, STR, REQ, OPT, VAR, CFN, GF) \
SCM_SNARF_HERE(\
SCM_UNUSED static const char RANAME[]=STR;\
static SCM GF \
)SCM_SNARF_INIT(\
GF = SCM_PACK (0); /* Dirk:FIXME:: Can we safely use #f instead of 0? */ \
scm_c_define_gsubr_with_generic (RANAME, REQ, OPT, VAR, \
(SCM_FUNC_CAST_ARBITRARY_ARGS) CFN, &GF) \
)
SCM_INTERNAL void scm_init_gsubr (void);
#endif /* SCM_GSUBR_H */

View file

@ -50,6 +50,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"

View file

@ -32,6 +32,7 @@
#include <unistr.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/chars.h"
#include "libguile/pairs.h"
#include "libguile/ports.h"

View file

@ -28,6 +28,7 @@
#include <assert.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/alist.h"
#include "libguile/boolean.h"

View file

@ -25,6 +25,7 @@
#include <stdio.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"

View file

@ -23,6 +23,7 @@
#include <alloca.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/extensions.h"

View file

@ -23,6 +23,7 @@
#include <string.h>
#include "_scm.h"
#include "libguile/gsubr.h"
#include "threads.h"
#include "libguile/list.h"
#include "libguile/numbers.h"

View file

@ -21,6 +21,7 @@
#endif
#include "_scm.h"
#include "libguile/gsubr.h"
#include "boolean.h"
#include "alist.h"
#include "cache-internal.h"

View file

@ -28,6 +28,7 @@
#include <errno.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/async.h"
#include "libguile/dynwind.h"

View file

@ -27,6 +27,7 @@
#include <stdarg.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/async.h"
#include "libguile/list.h"
#include "libguile/pairs.h"

View file

@ -24,6 +24,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/numbers.h"

View file

@ -28,6 +28,7 @@
#include <stdio.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/boolean.h"
#include "libguile/alist.h"
#include "libguile/chars.h"

View file

@ -40,6 +40,7 @@
#include <full-read.h>
#include "_scm.h"
#include "libguile/gsubr.h"
#include "bytevectors.h"
#include "boolean.h"
#include "elf.h"

View file

@ -23,6 +23,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/boolean.h"
#include "libguile/ports.h"
#include "libguile/print.h"

View file

@ -28,6 +28,7 @@
#include <stdio.h>
#include "libguile/__scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/_scm.h"

View file

@ -25,6 +25,7 @@
#include <stdarg.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"

View file

@ -46,6 +46,7 @@
#include <arpa/inet.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/feature.h"

View file

@ -60,6 +60,7 @@
#include <stdarg.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/boolean.h"
#include "libguile/feature.h"
#include "libguile/pairs.h"

View file

@ -23,6 +23,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/alist.h"
#include "libguile/async.h"
#include "libguile/hashtab.h"

View file

@ -24,7 +24,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "verify.h"

View file

@ -33,6 +33,7 @@
#include "libguile/bytevectors.h"
#include "libguile/error.h"
#include "libguile/extensions.h"
#include "libguile/gsubr.h"
#include "libguile/numbers.h"
#include "libguile/ports-internal.h"
#include "libguile/syscalls.h"

View file

@ -39,6 +39,7 @@
#include <striconveh.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/async.h"

View file

@ -63,6 +63,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/async.h"
#include "libguile/dynwind.h"

View file

@ -31,6 +31,7 @@
#include <unictype.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/chars.h"

View file

@ -24,6 +24,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/goops.h"
#include "libguile/strings.h"

View file

@ -22,6 +22,7 @@
#include <string.h>
#include "_scm.h"
#include "libguile/gsubr.h"
#include "boolean.h"
#include "instructions.h"
#include "alist.h"

View file

@ -26,6 +26,7 @@
#include <alloca.h>
#include "libguile/__scm.h"
#include "libguile/gsubr.h"
#include "libguile/_scm.h"
#include "libguile/alist.h"

View file

@ -27,6 +27,7 @@
#include <assert.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/boolean.h"
#include "libguile/bytevectors.h"
#include "libguile/chars.h"

View file

@ -25,8 +25,6 @@
# include <config.h>
#endif
#include "libguile/_scm.h"
#include <gmp.h>
#include <stdio.h>
#include <math.h>
@ -34,6 +32,8 @@
#include <sys/types.h>
#include <unistd.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/smob.h"
#include "libguile/generalized-arrays.h"
#include "libguile/list.h"

View file

@ -21,6 +21,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include <stdio.h>

View file

@ -34,6 +34,7 @@
#include <alloca.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/bytevectors.h"

View file

@ -36,6 +36,7 @@
#include <sys/types.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include <regex.h>

View file

@ -28,6 +28,7 @@
#include <string.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/async.h"
#include "libguile/fports.h"
#include "libguile/numbers.h"

View file

@ -42,6 +42,7 @@
#include <full-write.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"

View file

@ -28,6 +28,7 @@
#include <unistd.h> /* for _exit */
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/numbers.h"
#include "libguile/strings.h"

View file

@ -31,6 +31,7 @@
#include "libguile/async.h"
#include "libguile/goops.h"
#include "libguile/gsubr.h"
#include "libguile/finalizers.h"
#include "libguile/instructions.h"
#include "libguile/numbers.h"

View file

@ -26,14 +26,10 @@
#include <libguile/gc.h>
#include <libguile/gsubr.h>
/* Macros for snarfing initialization actions from C source. */
/* Casting to a function that can take any number of arguments. */
#define SCM_FUNC_CAST_ARBITRARY_ARGS scm_t_subr
#ifdef SCM_ALIGNED
/* We support static allocation of some `SCM' objects. */
# define SCM_SUPPORT_STATIC_ALLOCATION
@ -89,69 +85,6 @@ DOCSTRING ^^ }
# endif
#endif
#define SCM_DEFINE_GSUBR(FNAME, PRIMNAME, REQ, OPT, VAR, ARGLIST, DOCSTRING) \
SCM_SNARF_HERE(\
SCM_UNUSED static const char s_ ## FNAME [] = PRIMNAME; \
SCM FNAME ARGLIST\
)\
SCM_SNARF_INIT(\
scm_c_define_gsubr (s_ ## FNAME, REQ, OPT, VAR, \
(SCM_FUNC_CAST_ARBITRARY_ARGS) FNAME); \
)\
SCM_SNARF_DOCS(primitive, FNAME, PRIMNAME, ARGLIST, REQ, OPT, VAR, DOCSTRING)
/* Always use the generic subr case. */
#define SCM_DEFINE SCM_DEFINE_GSUBR
#define SCM_PRIMITIVE_GENERIC(FNAME, PRIMNAME, REQ, OPT, VAR, ARGLIST, DOCSTRING) \
SCM_SNARF_HERE(\
SCM_UNUSED static const char s_ ## FNAME [] = PRIMNAME; \
static SCM g_ ## FNAME; \
SCM FNAME ARGLIST\
)\
SCM_SNARF_INIT(\
g_ ## FNAME = SCM_PACK (0); \
scm_c_define_gsubr_with_generic (s_ ## FNAME, REQ, OPT, VAR, \
(SCM_FUNC_CAST_ARBITRARY_ARGS) FNAME, \
&g_ ## FNAME); \
)\
SCM_SNARF_DOCS(primitive, FNAME, PRIMNAME, ARGLIST, REQ, OPT, VAR, DOCSTRING)
#define SCM_DEFINE_PUBLIC(FNAME, PRIMNAME, REQ, OPT, VAR, ARGLIST, DOCSTRING) \
SCM_SNARF_HERE(\
SCM_UNUSED static const char s_ ## FNAME [] = PRIMNAME; \
SCM FNAME ARGLIST\
)\
SCM_SNARF_INIT(\
scm_c_define_gsubr (s_ ## FNAME, REQ, OPT, VAR, \
(SCM_FUNC_CAST_ARBITRARY_ARGS) FNAME); \
scm_c_export (s_ ## FNAME, NULL); \
)\
SCM_SNARF_DOCS(primitive, FNAME, PRIMNAME, ARGLIST, REQ, OPT, VAR, DOCSTRING)
#define SCM_PROC(RANAME, STR, REQ, OPT, VAR, CFN) \
SCM_SNARF_HERE(SCM_UNUSED static const char RANAME[]=STR) \
SCM_SNARF_INIT(scm_c_define_gsubr (RANAME, REQ, OPT, VAR, \
(SCM_FUNC_CAST_ARBITRARY_ARGS) CFN))
#define SCM_REGISTER_PROC(RANAME, STR, REQ, OPT, VAR, CFN) \
SCM_SNARF_HERE(SCM_UNUSED static const char RANAME[]=STR) \
SCM_SNARF_INIT(scm_c_define_gsubr (RANAME, REQ, OPT, VAR, \
(SCM_FUNC_CAST_ARBITRARY_ARGS) CFN);) \
SCM_SNARF_DOCS(register, CFN, STR, (), REQ, OPT, VAR, \
"implemented by the C function \"" #CFN "\"")
#define SCM_GPROC(RANAME, STR, REQ, OPT, VAR, CFN, GF) \
SCM_SNARF_HERE(\
SCM_UNUSED static const char RANAME[]=STR;\
static SCM GF \
)SCM_SNARF_INIT(\
GF = SCM_PACK (0); /* Dirk:FIXME:: Can we safely use #f instead of 0? */ \
scm_c_define_gsubr_with_generic (RANAME, REQ, OPT, VAR, \
(SCM_FUNC_CAST_ARBITRARY_ARGS) CFN, &GF) \
)
#define SCM_KEYWORD(c_name, scheme_name) \
SCM_SNARF_HERE(static SCM c_name) \
SCM_SNARF_INIT(c_name = scm_from_locale_keyword (scheme_name))

View file

@ -47,6 +47,7 @@
#include <gmp.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/async.h"
#include "libguile/arrays.h"

View file

@ -40,6 +40,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/eval.h"

View file

@ -25,6 +25,7 @@
#include <errno.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/async.h"
#include "libguile/smob.h"

View file

@ -25,6 +25,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/eq.h"

View file

@ -29,6 +29,7 @@
#include <unictype.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include <libguile/deprecation.h>
#include "libguile/eval.h"

View file

@ -29,6 +29,7 @@
#include <unictype.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/chars.h"

View file

@ -25,6 +25,7 @@
#include <string.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/boolean.h"
#include "libguile/__scm.h"
#include "libguile/bdw-gc.h"

View file

@ -25,6 +25,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/eq.h"

View file

@ -24,6 +24,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/numbers.h"
#include "libguile/ports.h"
#include "libguile/threads.h"

View file

@ -24,6 +24,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/boolean.h"
#include "libguile/control.h"
#include "libguile/eval.h"

View file

@ -50,6 +50,7 @@
#include <unistr.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/async.h"

View file

@ -36,6 +36,7 @@
#include "striconveh.h"
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/chars.h"
#include "libguile/strings.h"

View file

@ -23,6 +23,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/boolean.h"
#include "libguile/chars.h"
#include "libguile/pairs.h"

View file

@ -25,6 +25,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include <stdio.h>
#include <unistd.h>

View file

@ -29,6 +29,7 @@
#define SCM_BUILDING_DEPRECATED_CODE
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/boolean.h"
#include "libguile/async.h"
#include "libguile/chars.h"

View file

@ -26,6 +26,7 @@
#include <unistr.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/boolean.h"
#include "libguile/chars.h"

View file

@ -23,6 +23,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/keywords.h"
#include "libguile/eval.h"
#include "libguile/ports.h"

View file

@ -43,6 +43,7 @@
#include <gc/gc_mark.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/boolean.h"
#include "libguile/deprecation.h"
#include "libguile/extensions.h"

View file

@ -32,6 +32,7 @@
#include "libguile/smob.h"
#include "libguile/eval.h"
#include "libguile/eq.h"
#include "libguile/gsubr.h"
#include "libguile/control.h"
#include "libguile/deprecation.h"
#include "libguile/backtrace.h"

View file

@ -24,6 +24,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/eq.h"

View file

@ -28,6 +28,7 @@
#include <uniname.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/extensions.h"
#include "libguile/unicode.h"

View file

@ -22,6 +22,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/eval.h"
#include "libguile/feature.h"

View file

@ -24,6 +24,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/eq.h"
#include "libguile/list.h"
#include "libguile/ports.h"

View file

@ -24,6 +24,7 @@
#endif
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/pairs.h"
#include "libguile/eq.h"
#include "libguile/list.h"

View file

@ -24,6 +24,7 @@
#include <stdio.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/strings.h"
#include "libguile/numbers.h"

View file

@ -39,6 +39,7 @@
#include <gc/gc_mark.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/atomic.h"
#include "libguile/atomics-internal.h"
#include "libguile/cache-internal.h"

View file

@ -28,6 +28,7 @@
#include <errno.h>
#include "libguile/_scm.h"
#include "libguile/gsubr.h"
#include "libguile/boolean.h"
#include "libguile/eval.h"
#include "libguile/chars.h"

Some files were not shown because too many files have changed in this diff Show more