[plt-scheme] segfault in 299.102 x86 linux

From: Eric Hanchrow (offby1 at blarg.net)
Date: Tue Apr 19 16:04:33 EDT 2005

(I apologize if this is duplicated)

To repro, save the attached file as "die.ss", then at the shell, type

        sh die.ss

If you're like me, you'll then get a segfault with this stack trace:
(gdb) bt
#0  0x080ae65a in display_write (name=0x81178b4 "display", argc=0, argv=0x8285f98, escape=1) at portfun.c:3673
#1  0x080ae7c9 in display (argc=0, argv=0x0) at portfun.c:3727
#2  0x0806dfc0 in scheme_do_eval (obj=0x82bb730, num_rands=1, rands=0x8285f98, get_value=-1) at eval.c:3376
#3  0x0806e1cb in eval_k () at eval.c:4349
#4  0x0806e869 in do_default_eval_handler (env=0x8288ea0, argc=1, argv=0x0) at eval.c:4558
#5  0x0806eab8 in scheme_default_eval_handler (argc=0, argv=0x0) at eval.c:4633
#6  0x0806dfc0 in scheme_do_eval (obj=0x827df80, num_rands=1, rands=0xbffff398, get_value=-1) at eval.c:3376
#7  0x080af0fc in do_load_handler (data=0x83872e8) at portfun.c:4083
#8  0x0807a959 in scheme_dynamic_wind (pre=0, act=0x80aefd0 <do_load_handler>, post=0x80aefb0 <post_load_handler>, jmp_handler=0, data=0x83872e8) at fun.c:3248
#9  0x080af7c9 in default_load (argc=-1073744688, argv=0x80aefd0) at portfun.c:4200
#10 0x0806dfc0 in scheme_do_eval (obj=0x827db60, num_rands=2, rands=0xbffff598, get_value=-1) at eval.c:3376
#11 0x080af98a in scheme_load_with_clrd (argc=0, argv=0x8387420, who=0xbffff5a0 "\003", handler_param=0) at portfun.c:4238
#12 0x080af9ca in load (argc=0, argv=0x0) at portfun.c:4247
#13 0x0806dfc0 in scheme_do_eval (obj=0x8387438, num_rands=1, rands=0xbffff974, get_value=-1) at eval.c:3376
#14 0x08076dc7 in apply_k () at fun.c:1198
#15 0x08076942 in top_level_do (k=0x8076d70 <apply_k>, eb=1, sj_start=0x0) at fun.c:1086
#16 0x08076c82 in scheme_top_level_do (k=0, eb=0) at fun.c:1131
#17 0x08076e91 in scheme_apply_multi (rator=0x0, num_rands=0, rands=0x0) at fun.c:1225
#18 0x080afbe8 in scheme_load (file=0x0) at portfun.c:4312
#19 0x0805bcd0 in finish_cmd_line_run (fa=0x8362ee0, repl=0x805cad0 <do_scheme_rep>) at cmdline.inc:244
#20 0x0805caca in cont_run (f=0x0) at main.c:364
#21 0x0805c8e1 in run_from_cmd_line (argc=0, _argv=0xbffffc64, mk_basic_env=0x805cb20 <scheme_basic_env>, cont_run=0x805cab0 <cont_run>) at cmdline.inc:951
#22 0x0805ca92 in actual_main (argc=0, argv=0x0) at main.c:353
#23 0x0807cc89 in scheme_image_main (argc=0, argv=0x0) at image.c:765
#24 0x0805ca4c in main (argc=0, argv=0x0) at main.c:263

Note that the two halves of the file are pretty much the same; the
only difference is that the second structure only has one slot,
whereas the first has two.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: die.ss
Type: application/octet-stream
Size: 1592 bytes
Desc: killer
URL: <http://lists.racket-lang.org/users/archive/attachments/20050419/aeced46a/attachment.obj>
-------------- next part --------------

Using Unix is the computing equivalent of listening only to music
by David Cassidy.
        -- Rob Pike

Posted on the users mailing list.