guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] 15/26: Most header files use forward decl for union scm_


From: Andy Wingo
Subject: [Guile-commits] 15/26: Most header files use forward decl for union scm_vm_stack_element
Date: Tue, 26 Jun 2018 11:26:13 -0400 (EDT)

wingo pushed a commit to branch master
in repository guile.

commit 3b6bf20ef5d7d0de34de4fb7ba9777af29ba55ae
Author: Andy Wingo <address@hidden>
Date:   Tue Jun 26 10:46:11 2018 +0200

    Most header files use forward decl for union scm_vm_stack_element
    
    * libguile.h: Add includes for frames.h and vm.h.  Probably need to
      revisit these includes.
    * libguile/scm.h (struct scm_frame, union scm_vm_stack_element)
      (struct scm_vm): Add forward declarations.
    * libguile/vm.h: Remove frames.h include.
    * libguile/foreign.h:
    * libguile/gsubr.h: Remove forward decls of union scm_vm_stack_element.
    * libguile/control.c:
    * libguile/eval.c:
    * libguile/print.c: Add frames.h includes.
    * libguile/threads.h: Remove continuations.h.
    * libguile/vm.c: Add continuations.h.
    * libguile/control.h: Swap vm.h include for scm.h include.
    * libguile/continuations.h: Add programs.h include for SCM_PROGRAM_P.
---
 libguile.h               | 2 ++
 libguile/continuations.h | 1 +
 libguile/control.c       | 1 +
 libguile/control.h       | 2 +-
 libguile/eval.c          | 1 +
 libguile/foreign.h       | 2 --
 libguile/gsubr.h         | 1 -
 libguile/print.c         | 1 +
 libguile/scm.h           | 3 +++
 libguile/threads.h       | 1 -
 libguile/vm.c            | 1 +
 libguile/vm.h            | 1 -
 12 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/libguile.h b/libguile.h
index bd61053..53479d8 100644
--- a/libguile.h
+++ b/libguile.h
@@ -58,6 +58,7 @@ extern "C" {
 #include "libguile/foreign.h"
 #include "libguile/foreign-object.h"
 #include "libguile/fports.h"
+#include "libguile/frames.h"
 #include "libguile/gc.h"
 #include "libguile/generalized-arrays.h"
 #include "libguile/generalized-vectors.h"
@@ -116,6 +117,7 @@ extern "C" {
 #include "libguile/vectors.h"
 #include "libguile/srfi-4.h"
 #include "libguile/version.h"
+#include "libguile/vm.h"
 #include "libguile/vports.h"
 #include "libguile/weak-set.h"
 #include "libguile/weak-table.h"
diff --git a/libguile/continuations.h b/libguile/continuations.h
index a7bfa60..a9ab5ea 100644
--- a/libguile/continuations.h
+++ b/libguile/continuations.h
@@ -24,6 +24,7 @@
 
 #include <setjmp.h>
 
+#include "libguile/programs.h"
 #include "libguile/throw.h"
 
 
diff --git a/libguile/control.c b/libguile/control.c
index 7605391..287f30f 100644
--- a/libguile/control.c
+++ b/libguile/control.c
@@ -25,6 +25,7 @@
 
 #include "dynstack.h"
 #include "extensions.h"
+#include "frames.h"
 #include "gsubr.h"
 #include "instructions.h"
 #include "list.h"
diff --git a/libguile/control.h b/libguile/control.h
index 1b40656..c2bb5b5 100644
--- a/libguile/control.h
+++ b/libguile/control.h
@@ -22,7 +22,7 @@
 
 #include <setjmp.h>
 
-#include "libguile/vm.h"
+#include "libguile/scm.h"
 
 
 SCM_INTERNAL SCM scm_i_prompt_pop_abort_args_x (struct scm_vm *vp,
diff --git a/libguile/eval.c b/libguile/eval.c
index 1403a14..c8e7380 100644
--- a/libguile/eval.c
+++ b/libguile/eval.c
@@ -37,6 +37,7 @@
 #include "eq.h"
 #include "expand.h"
 #include "feature.h"
+#include "frames.h"
 #include "fluids.h"
 #include "goops.h"
 #include "gsubr.h"
diff --git a/libguile/foreign.h b/libguile/foreign.h
index 01a1ef8..d2278e8 100644
--- a/libguile/foreign.h
+++ b/libguile/foreign.h
@@ -98,8 +98,6 @@ SCM_INTERNAL SCM scm_pointer_to_string (SCM pointer, SCM 
length, SCM encoding);
    arguments.
  */
 
-union scm_vm_stack_element;
-
 SCM_API SCM scm_pointer_to_procedure (SCM return_type, SCM func_ptr,
                                      SCM arg_types);
 SCM_API SCM scm_pointer_to_procedure_with_errno (SCM return_type, SCM func_ptr,
diff --git a/libguile/gsubr.h b/libguile/gsubr.h
index 963bf48..8407ae5 100644
--- a/libguile/gsubr.h
+++ b/libguile/gsubr.h
@@ -55,7 +55,6 @@
 SCM_INTERNAL int scm_i_primitive_code_p (const uint32_t *code);
 SCM_INTERNAL uintptr_t scm_i_primitive_call_ip (SCM subr);
 
-union scm_vm_stack_element;
 SCM_INTERNAL SCM scm_apply_subr (union scm_vm_stack_element *sp,
                                  ptrdiff_t nargs);
 
diff --git a/libguile/print.c b/libguile/print.c
index 86f2b81..b5b5ec6 100644
--- a/libguile/print.c
+++ b/libguile/print.c
@@ -41,6 +41,7 @@
 #include "eval.h"
 #include "fluids.h"
 #include "foreign.h"
+#include "frames.h"
 #include "goops.h"
 #include "gsubr.h"
 #include "hashtab.h"
diff --git a/libguile/scm.h b/libguile/scm.h
index 9dee8fc..9996ec4 100644
--- a/libguile/scm.h
+++ b/libguile/scm.h
@@ -824,6 +824,9 @@ typedef struct scm_dynamic_state scm_t_dynamic_state;
 typedef struct scm_print_state scm_print_state;
 typedef struct scm_dynstack scm_t_dynstack;
 typedef int32_t scm_t_wchar;
+struct scm_frame;
+struct scm_vm;
+union scm_vm_stack_element;
 
 
 
diff --git a/libguile/threads.h b/libguile/threads.h
index 6cbab2a..50d4ba1 100644
--- a/libguile/threads.h
+++ b/libguile/threads.h
@@ -29,7 +29,6 @@
 #include "libguile/dynstack.h"
 #include "libguile/iselect.h"
 #include "libguile/smob.h"
-#include "libguile/continuations.h"
 #include "libguile/vm.h"
 
 #if SCM_USE_PTHREAD_THREADS
diff --git a/libguile/vm.c b/libguile/vm.c
index 1a7308c..bafdcf2 100644
--- a/libguile/vm.c
+++ b/libguile/vm.c
@@ -41,6 +41,7 @@
 #include "atomics-internal.h"
 #include "bdw-gc.h"
 #include "cache-internal.h"
+#include "continuations.h"
 #include "control.h"
 #include "dynwind.h"
 #include "eval.h"
diff --git a/libguile/vm.h b/libguile/vm.h
index a018e39..9b97a6a 100644
--- a/libguile/vm.h
+++ b/libguile/vm.h
@@ -21,7 +21,6 @@
 #define _SCM_VM_H_
 
 #include <libguile/gc.h>
-#include <libguile/frames.h>
 #include <libguile/programs.h>
 
 enum {



reply via email to

[Prev in Thread] Current Thread [Next in Thread]