summaryrefslogtreecommitdiff
path: root/libguile/macros.c
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2008-09-02 22:24:11 -0700
committerAndy Wingo <wingo@pobox.com>2008-09-07 22:27:19 +0200
commit3633ff4e952fd3fcb2c0375194d8c34e930867f3 (patch)
treea8c99f004dd3f23c16e75f5eae11ac9b2a04edbf /libguile/macros.c
parent80b5909ca8feae3bebfed8b44af906c2a7f0fa16 (diff)
print compiled macros correctly
* libguile/macros.c (macro_print): Print macros whose code is a program as non-primitive. (Already, primitive-macro? would return #f.)
Diffstat (limited to 'libguile/macros.c')
-rw-r--r--libguile/macros.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libguile/macros.c b/libguile/macros.c
index db279ec7e..48286d890 100644
--- a/libguile/macros.c
+++ b/libguile/macros.c
@@ -28,6 +28,7 @@
#include "libguile/deprecation.h"
#include "libguile/validate.h"
+#include "libguile/programs.h"
#include "libguile/macros.h"
#include "libguile/private-options.h"
@@ -44,7 +45,7 @@ macro_print (SCM macro, SCM port, scm_print_state *pstate)
|| scm_is_false (scm_printer_apply (SCM_PRINT_CLOSURE,
macro, port, pstate)))
{
- if (!SCM_CLOSUREP (code))
+ if (!SCM_CLOSUREP (code) && !SCM_PROGRAM_P (code))
scm_puts ("#<primitive-", port);
else
scm_puts ("#<", port);