[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Segv or GC abort caused by (debug-set! frames N) where N>31
From: |
Neil Jerram |
Subject: |
Segv or GC abort caused by (debug-set! frames N) where N>31 |
Date: |
08 Mar 2002 12:34:42 +0000 |
User-agent: |
Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7 |
Examples:
guile> (version)
"1.5.4"
guile> (use-modules (ossau breakpoints))
guile> (use-modules (srfi srfi-19))
guile> (trace-subtree! date-week-number)
Set breakpoint 1: [date-week-number]
#<<procedure-breakpoint> 808baa0>
guile> (define d (string->date "01 08 2002" "~d ~m ~y"))
guile> (debug-set! frames 33)
(show-file-name #t stack 20000 debug depth 20 maxdepth 1000 frames 33 indent 10
width 79 procnames trace cheap)
guile> (date-week-number d 0)
Error in scm_gc_mark during GC: rogue pointer in heap
Inferior Scheme aborted
guile> (version)
"1.5.4"
guile> (use-modules (ossau breakpoints))
guile> (use-modules (srfi srfi-19))
guile> (trace-subtree! date-week-number)
Set breakpoint 1: [date-week-number]
#<<procedure-breakpoint> 808baa0>
guile> (define d (string->date "01 08 2002" "~d ~m ~y"))
guile> (debug-set! frames 63)
(show-file-name #t stack 20000 debug depth 20 maxdepth 1000 frames 63 indent 10
width 79 procnames trace cheap)
guile> (date-week-number d 0)
Inferior Scheme segmentation fault
Here's the fix:
cd /home/neil/Guile/branch_release-1-6/guile-core/libguile/
diff -Naur /home/neil/Guile/branch_release-1-6/guile-core/libguile/eval.c.orig
/home/neil/Guile/branch_release-1-6/guile-core/libguile/eval.c
--- /home/neil/Guile/branch_release-1-6/guile-core/libguile/eval.c.orig Fri Mar
8 12:19:31 2002
+++ /home/neil/Guile/branch_release-1-6/guile-core/libguile/eval.c Fri Mar
8 12:19:44 2002
@@ -1838,7 +1838,7 @@
scm_t_debug_frame debug;
scm_t_debug_info *debug_info_end;
debug.prev = scm_last_debug_frame;
- debug.status = scm_debug_eframe_size;
+ debug.status = 0;
/*
* The debug.vect contains twice as much scm_t_debug_info frames as the
* user has specified with (debug-set! frames <n>).
I'll commit it everywhere soon.
Neil
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Segv or GC abort caused by (debug-set! frames N) where N>31,
Neil Jerram <=