summaryrefslogtreecommitdiff
path: root/libguile/print.c
diff options
context:
space:
mode:
Diffstat (limited to 'libguile/print.c')
-rw-r--r--libguile/print.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libguile/print.c b/libguile/print.c
index d90c77f3e..024ccc5b9 100644
--- a/libguile/print.c
+++ b/libguile/print.c
@@ -589,7 +589,10 @@ taloop:
scm_raprin1 (exp, port, pstate);
break;
case scm_tcs_subrs:
- scm_puts ("#<primitive-procedure ", port);
+ scm_puts (SCM_SUBR_GENERIC (exp) && *SCM_SUBR_GENERIC (exp)
+ ? "#<primitive-generic "
+ : "#<primitive-procedure ",
+ port);
scm_puts (SCM_CHARS (SCM_SNAME (exp)), port);
scm_putc ('>', port);
break;