diff options
author | Andy Wingo <wingo@pobox.com> | 2018-06-20 11:52:29 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2018-06-20 11:52:29 +0200 |
commit | 1ddf42dae0e6b5aa2ca5c0fb058cb32eb28d053b (patch) | |
tree | 2660c861f366e99ab694d1c244dfcfc94b0b9cd5 | |
parent | b64941f5af5b59d3e726cc10ecc2431379e73689 (diff) | |
download | guile-1ddf42dae0e6b5aa2ca5c0fb058cb32eb28d053b.tar.gz |
Devolve threads.h from _scm.h.
* libguile/__scm.h (scm_print_state, scm_t_dynstack): Add forward
declarations.
* libguile/_scm.h: Remove threads.h.
* libguile/atomic.c:
* libguile/bitvectors.h:
* libguile/bytevectors.c:
* libguile/continuations.h:
* libguile/control.c:
* libguile/deprecation.c:
* libguile/dynl.c:
* libguile/dynstack.h:
* libguile/dynwind.c:
* libguile/extensions.c:
* libguile/fdes-finalizers.c:
* libguile/foreign-object.c:
* libguile/frames.c:
* libguile/guardians.c:
* libguile/hashtab.c:
* libguile/list.c:
* libguile/loader.c:
* libguile/macros.c:
* libguile/memoize.c:
* libguile/net_db.c:
* libguile/pairs.c:
* libguile/procprop.c:
* libguile/rdelim.c:
* libguile/simpos.c:
* libguile/srfi-14.c:
* libguile/srfi-60.c:
* libguile/strings.c:
* libguile/strports.c:
* libguile/syntax.c:
* libguile/syntax.h:
* libguile/unicode.c:
* libguile/variable.c:
* libguile/vectors.c:
* libguile/weak-set.c:
* libguile/weak-set.h:
* libguile/weak-table.c:
* libguile/weak-table.h:
* libguile/weak-vector.c: Add threads.h as appropriate, or possible
other headers that threads.h pulled in.
40 files changed, 44 insertions, 6 deletions
diff --git a/libguile/__scm.h b/libguile/__scm.h index 6861a8104..fe99ee697 100644 --- a/libguile/__scm.h +++ b/libguile/__scm.h @@ -426,6 +426,8 @@ typedef long SCM_STACKITEM; /* Trivial type declarations and forward declarations. */ +typedef struct scm_print_state scm_print_state; +typedef struct scm_dynstack scm_t_dynstack; typedef scm_t_int32 scm_t_wchar; diff --git a/libguile/_scm.h b/libguile/_scm.h index d7b0b93fe..7ce87500f 100644 --- a/libguile/_scm.h +++ b/libguile/_scm.h @@ -37,7 +37,6 @@ /* Include headers for those files central to the implementation. The rest should be explicitly #included in the C files themselves. */ #include "libguile/symbols.h" /* For length, chars, values, miscellany. */ -#include "libguile/threads.h" /* You are not alone. */ #include "libguile/foreign.h" /* Snarfing needs the foreign data structures. */ #include "libguile/programs.h" /* ... and program.h. */ #include "libguile/modules.h" diff --git a/libguile/atomic.c b/libguile/atomic.c index a82cd823f..f6cc33fa8 100644 --- a/libguile/atomic.c +++ b/libguile/atomic.c @@ -23,6 +23,7 @@ #endif #include "libguile/_scm.h" +#include "libguile/boolean.h" #include "libguile/gsubr.h" #include "libguile/extensions.h" #include "libguile/ports.h" diff --git a/libguile/bitvectors.h b/libguile/bitvectors.h index 57ae52fc8..d15b61532 100644 --- a/libguile/bitvectors.h +++ b/libguile/bitvectors.h @@ -3,7 +3,8 @@ #ifndef SCM_BITVECTORS_H #define SCM_BITVECTORS_H -/* Copyright (C) 1995,1996,1997,1999,2000,2001, 2004, 2006, 2008, 2009, 2014 Free Software Foundation, Inc. +/* Copyright (C) 1995-1997,1999-2001,2004,2006,2008-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 diff --git a/libguile/bytevectors.c b/libguile/bytevectors.c index 766907736..f50ca828d 100644 --- a/libguile/bytevectors.c +++ b/libguile/bytevectors.c @@ -37,6 +37,7 @@ #include <gmp.h> #include "libguile/_scm.h" +#include "libguile/boolean.h" #include "libguile/gsubr.h" #include "libguile/dynwind.h" #include "libguile/extensions.h" diff --git a/libguile/continuations.h b/libguile/continuations.h index e8be75596..edebcf2a6 100644 --- a/libguile/continuations.h +++ b/libguile/continuations.h @@ -27,6 +27,7 @@ #include <setjmp.h> #include "libguile/__scm.h" +#include "libguile/throw.h" diff --git a/libguile/control.c b/libguile/control.c index fb8f49aa3..336a81285 100644 --- a/libguile/control.c +++ b/libguile/control.c @@ -23,12 +23,14 @@ #include <alloca.h> #include "libguile/_scm.h" +#include "libguile/dynstack.h" #include "libguile/gsubr.h" #include "libguile/pairs.h" #include "libguile/control.h" #include "libguile/extensions.h" #include "libguile/list.h" #include "libguile/programs.h" +#include "libguile/threads.h" #include "libguile/instructions.h" #include "libguile/vm.h" diff --git a/libguile/deprecation.c b/libguile/deprecation.c index 6fba31f93..14e5518f3 100644 --- a/libguile/deprecation.c +++ b/libguile/deprecation.c @@ -35,6 +35,7 @@ #include "libguile/list.h" #include "libguile/strings.h" #include "libguile/ports.h" +#include "libguile/threads.h" #include "libguile/private-options.h" diff --git a/libguile/dynl.c b/libguile/dynl.c index 413f2e3a6..050450f12 100644 --- a/libguile/dynl.c +++ b/libguile/dynl.c @@ -62,6 +62,7 @@ maybe_drag_in_eprintf () #include "libguile/deprecation.h" #include "libguile/dynwind.h" #include "libguile/foreign.h" +#include "libguile/threads.h" #include "libguile/gc.h" #include <ltdl.h> diff --git a/libguile/dynstack.h b/libguile/dynstack.h index 66a99075b..e44fdf7f5 100644 --- a/libguile/dynstack.h +++ b/libguile/dynstack.h @@ -23,13 +23,14 @@ +#include <setjmp.h> #include <signal.h> #include "libguile/__scm.h" -typedef struct +typedef struct scm_dynstack { scm_t_bits *base; scm_t_bits *top; diff --git a/libguile/dynwind.c b/libguile/dynwind.c index aa7a83596..b6efe2291 100644 --- a/libguile/dynwind.c +++ b/libguile/dynwind.c @@ -30,6 +30,7 @@ #include "libguile/boolean.h" #include "libguile/dynstack.h" #include "libguile/eval.h" +#include "libguile/threads.h" #include "libguile/pairs.h" #include "libguile/ports.h" #include "libguile/variable.h" diff --git a/libguile/extensions.c b/libguile/extensions.c index be73c8ce4..d4f0de15c 100644 --- a/libguile/extensions.c +++ b/libguile/extensions.c @@ -32,6 +32,7 @@ #include "libguile/extensions.h" #include "libguile/gc.h" #include "libguile/strings.h" +#include "libguile/threads.h" typedef struct extension_t { diff --git a/libguile/fdes-finalizers.c b/libguile/fdes-finalizers.c index 3143299f6..9c5056690 100644 --- a/libguile/fdes-finalizers.c +++ b/libguile/fdes-finalizers.c @@ -30,6 +30,7 @@ #include "libguile/hashtab.h" #include "libguile/list.h" #include "libguile/numbers.h" +#include "libguile/threads.h" #include "libguile/fdes-finalizers.h" diff --git a/libguile/foreign-object.c b/libguile/foreign-object.c index 593069d6b..145b6e3bc 100644 --- a/libguile/foreign-object.c +++ b/libguile/foreign-object.c @@ -32,6 +32,7 @@ #include "libguile/list.h" #include "libguile/numbers.h" #include "libguile/procs.h" +#include "libguile/threads.h" #include "libguile/variable.h" diff --git a/libguile/frames.c b/libguile/frames.c index fbd937a80..b37887be2 100644 --- a/libguile/frames.c +++ b/libguile/frames.c @@ -30,6 +30,7 @@ #include "numbers.h" #include "frames.h" #include "ports.h" +#include "threads.h" #include "libguile/variable.h" #include "vm.h" diff --git a/libguile/guardians.c b/libguile/guardians.c index 7edb39633..135a442a5 100644 --- a/libguile/guardians.c +++ b/libguile/guardians.c @@ -64,6 +64,7 @@ #include "libguile/ports.h" #include "libguile/print.h" #include "libguile/smob.h" +#include "libguile/threads.h" #include "libguile/weak-vector.h" diff --git a/libguile/hashtab.c b/libguile/hashtab.c index f25543f11..c41bf1a73 100644 --- a/libguile/hashtab.c +++ b/libguile/hashtab.c @@ -40,6 +40,7 @@ #include "libguile/list.h" #include "libguile/numbers.h" #include "libguile/ports.h" +#include "libguile/procs.h" #include "libguile/vectors.h" #include "libguile/weak-table.h" diff --git a/libguile/list.c b/libguile/list.c index 08b8b51f4..9e3935dfe 100644 --- a/libguile/list.c +++ b/libguile/list.c @@ -28,6 +28,7 @@ #include "libguile/pairs.h" #include "libguile/boolean.h" #include "libguile/numbers.h" +#include "libguile/procs.h" #include "libguile/eq.h" #include "libguile/list.h" diff --git a/libguile/loader.c b/libguile/loader.c index e7c4f98a0..13bfcee88 100644 --- a/libguile/loader.c +++ b/libguile/loader.c @@ -48,6 +48,7 @@ #include "extensions.h" #include "pairs.h" #include "programs.h" +#include "threads.h" #include "loader.h" /* This file contains the loader for Guile's on-disk format: ELF with diff --git a/libguile/macros.c b/libguile/macros.c index 0015ecf86..f9ad72d4e 100644 --- a/libguile/macros.c +++ b/libguile/macros.c @@ -27,6 +27,7 @@ #include "libguile/boolean.h" #include "libguile/ports.h" #include "libguile/print.h" +#include "libguile/procs.h" #include "libguile/random.h" #include "libguile/smob.h" #include "libguile/macros.h" diff --git a/libguile/memoize.c b/libguile/memoize.c index 4d396c6fe..3df26f3c9 100644 --- a/libguile/memoize.c +++ b/libguile/memoize.c @@ -34,6 +34,7 @@ #include "libguile/_scm.h" #include "libguile/alist.h" #include "libguile/continuations.h" +#include "libguile/dynstack.h" #include "libguile/eq.h" #include "libguile/expand.h" #include "libguile/list.h" @@ -46,6 +47,7 @@ #include "libguile/print.h" #include "libguile/strings.h" #include "libguile/throw.h" +#include "libguile/threads.h" #include "libguile/variable.h" #include "libguile/vectors.h" diff --git a/libguile/net_db.c b/libguile/net_db.c index 75d530dbf..6edb4faf5 100644 --- a/libguile/net_db.c +++ b/libguile/net_db.c @@ -55,6 +55,7 @@ #include "libguile/strings.h" #include "libguile/vectors.h" #include "libguile/dynwind.h" +#include "libguile/throw.h" #include "libguile/net_db.h" #include "libguile/socket.h" diff --git a/libguile/pairs.c b/libguile/pairs.c index 6b5113540..84ac83d27 100644 --- a/libguile/pairs.c +++ b/libguile/pairs.c @@ -24,6 +24,7 @@ #endif #include "libguile/_scm.h" +#include "libguile/boolean.h" #include "libguile/gsubr.h" #include "libguile/pairs.h" diff --git a/libguile/procprop.c b/libguile/procprop.c index 01a635c2e..1333493a2 100644 --- a/libguile/procprop.c +++ b/libguile/procprop.c @@ -34,6 +34,7 @@ #include "libguile/gsubr.h" #include "libguile/numbers.h" #include "libguile/smob.h" +#include "libguile/threads.h" #include "libguile/vectors.h" #include "libguile/weak-table.h" #include "libguile/programs.h" diff --git a/libguile/rdelim.c b/libguile/rdelim.c index 53990f48a..578fb80d7 100644 --- a/libguile/rdelim.c +++ b/libguile/rdelim.c @@ -21,6 +21,7 @@ #endif #include "libguile/_scm.h" +#include "libguile/boolean.h" #include "libguile/gsubr.h" #include "libguile/pairs.h" diff --git a/libguile/simpos.c b/libguile/simpos.c index 6163cc5d8..06c46558b 100644 --- a/libguile/simpos.c +++ b/libguile/simpos.c @@ -28,6 +28,7 @@ #include <unistd.h> /* for _exit */ #include "libguile/_scm.h" +#include "libguile/boolean.h" #include "libguile/gsubr.h" #include "libguile/numbers.h" diff --git a/libguile/srfi-14.c b/libguile/srfi-14.c index 243da3e57..b69dfeed0 100644 --- a/libguile/srfi-14.c +++ b/libguile/srfi-14.c @@ -38,6 +38,7 @@ #include "libguile/ports.h" #include "libguile/numbers.h" #include "libguile/procs.h" +#include "libguile/smob.h" #include "libguile/srfi-14.h" #include "libguile/strings.h" #include "libguile/values.h" diff --git a/libguile/srfi-60.c b/libguile/srfi-60.c index 74c819f30..8613d0bce 100644 --- a/libguile/srfi-60.c +++ b/libguile/srfi-60.c @@ -25,6 +25,7 @@ #endif #include "libguile/_scm.h" +#include "libguile/boolean.h" #include "libguile/gsubr.h" #include "libguile/pairs.h" #include "libguile/eq.h" diff --git a/libguile/strings.c b/libguile/strings.c index 3159ae39b..c04652202 100644 --- a/libguile/strings.c +++ b/libguile/strings.c @@ -46,6 +46,7 @@ #include "libguile/error.h" #include "libguile/generalized-vectors.h" #include "libguile/deprecation.h" +#include "libguile/threads.h" #include "libguile/private-options.h" diff --git a/libguile/strports.c b/libguile/strports.c index e4bd2fc91..62af50218 100644 --- a/libguile/strports.c +++ b/libguile/strports.c @@ -41,6 +41,7 @@ #include "libguile/modules.h" #include "libguile/deprecation.h" #include "libguile/srfi-4.h" +#include "libguile/threads.h" #include "libguile/variable.h" #include "libguile/strports.h" diff --git a/libguile/syntax.c b/libguile/syntax.c index 70686d17a..34d8f7925 100644 --- a/libguile/syntax.c +++ b/libguile/syntax.c @@ -28,6 +28,7 @@ #include "libguile/eval.h" #include "libguile/ports.h" #include "libguile/syntax.h" +#include "libguile/threads.h" #include "libguile/variable.h" diff --git a/libguile/syntax.h b/libguile/syntax.h index 7fdfd2891..50bb47514 100644 --- a/libguile/syntax.h +++ b/libguile/syntax.h @@ -1,7 +1,7 @@ #ifndef SCM_SYNTAX_H #define SCM_SYNTAX_H -/* Copyright (C) 2017 Free Software Foundation, Inc. +/* Copyright (C) 2017-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 diff --git a/libguile/unicode.c b/libguile/unicode.c index 2494f8831..5f80b10a5 100644 --- a/libguile/unicode.c +++ b/libguile/unicode.c @@ -28,6 +28,7 @@ #include <uniname.h> #include "libguile/_scm.h" +#include "libguile/chars.h" #include "libguile/gsubr.h" #include "libguile/extensions.h" diff --git a/libguile/variable.c b/libguile/variable.c index 8d3bdc778..923dfc725 100644 --- a/libguile/variable.c +++ b/libguile/variable.c @@ -24,6 +24,7 @@ #endif #include "libguile/_scm.h" +#include "libguile/boolean.h" #include "libguile/gsubr.h" #include "libguile/eq.h" #include "libguile/list.h" diff --git a/libguile/vectors.c b/libguile/vectors.c index d23706ac2..57c189036 100644 --- a/libguile/vectors.c +++ b/libguile/vectors.c @@ -24,6 +24,7 @@ #endif #include "libguile/_scm.h" +#include "libguile/boolean.h" #include "libguile/gsubr.h" #include "libguile/pairs.h" #include "libguile/eq.h" diff --git a/libguile/weak-set.c b/libguile/weak-set.c index 1206dfde6..6f409aff4 100644 --- a/libguile/weak-set.c +++ b/libguile/weak-set.c @@ -31,6 +31,7 @@ #include "libguile/hash.h" #include "libguile/eval.h" #include "libguile/ports.h" +#include "libguile/threads.h" #include "libguile/bdw-gc.h" #include "libguile/weak-list.h" diff --git a/libguile/weak-set.h b/libguile/weak-set.h index 86781c78a..6352c9b42 100644 --- a/libguile/weak-set.h +++ b/libguile/weak-set.h @@ -3,7 +3,7 @@ #ifndef SCM_WEAK_SET_H #define SCM_WEAK_SET_H -/* Copyright (C) 2011 Free Software Foundation, Inc. +/* Copyright (C) 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 diff --git a/libguile/weak-table.c b/libguile/weak-table.c index cf3727a6e..3b1e9ae6a 100644 --- a/libguile/weak-table.c +++ b/libguile/weak-table.c @@ -37,6 +37,7 @@ #include "libguile/numbers.h" #include "libguile/ports.h" #include "libguile/procs.h" +#include "libguile/threads.h" #include "libguile/weak-list.h" #include "libguile/weak-table.h" diff --git a/libguile/weak-table.h b/libguile/weak-table.h index f516c2601..1fe59543e 100644 --- a/libguile/weak-table.h +++ b/libguile/weak-table.h @@ -3,7 +3,7 @@ #ifndef SCM_WEAK_TABLE_H #define SCM_WEAK_TABLE_H -/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. +/* Copyright (C) 2011-2012,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 diff --git a/libguile/weak-vector.c b/libguile/weak-vector.c index 3032dae41..deb474a82 100644 --- a/libguile/weak-vector.c +++ b/libguile/weak-vector.c @@ -27,6 +27,7 @@ #include <string.h> #include "libguile/_scm.h" +#include "libguile/boolean.h" #include "libguile/gsubr.h" #include "libguile/extensions.h" #include "libguile/list.h" |