summaryrefslogtreecommitdiff
path: root/libguile/pairs.c
diff options
context:
space:
mode:
Diffstat (limited to 'libguile/pairs.c')
-rw-r--r--libguile/pairs.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/libguile/pairs.c b/libguile/pairs.c
index 48db366b3..24d1aec07 100644
--- a/libguile/pairs.c
+++ b/libguile/pairs.c
@@ -61,9 +61,16 @@
void scm_error_pair_access (SCM non_pair)
{
+ static unsigned int running = 0;
SCM message = scm_makfrom0str ("Non-pair accessed with SCM_C[AD]R: `~Sī\n");
- scm_simple_format (scm_current_error_port (), message, SCM_LIST1 (non_pair));
- abort ();
+
+ if (!running)
+ {
+ running = 1;
+ scm_simple_format (scm_current_error_port (),
+ message, SCM_LIST1 (non_pair));
+ abort ();
+ }
}
#endif