#10: -r33351 causes tcl segfault
---------------------+------------------------------------------------------
 Reporter:  coke     |       Owner:          
     Type:  bug      |      Status:  new     
 Priority:  unknown  |   Milestone:          
Component:  none     |     Version:  trunk   
 Severity:  high     |    Keywords:  segfault
     Lang:           |       Patch:          
 Platform:  linux    |  
---------------------+------------------------------------------------------
 To duplicate the segfault, grab a copy of partcl
 (http://code.google.com/p/partcl/wiki/PartclSource), and run:

 {{{
 ../../parrot tcl.pbc library/tcltest/tcltest.tcl
 }}}

 Which should output nothing and complete successfully; Recent parrots
 segfault here (at least on feather.) using svn-bisect, I find this
 segfault began at r33351:

 {{{
 ------------------------------------------------------------------------
 r33351 | tewk | 2008-11-29 22:30:59 +0100 (Sat, 29 Nov 2008) | 2 lines

 [nsentry] The infrastructure is in place, make realclean

 ------------------------------------------------------------------------
 }}}

 The backtrace is as follows:

 {{{
 #0  0xb7ac02d1 in string_equal (interp=0x804f040, s1=0x8a, s2=0x8070f20)
 at src/string.c:1437
 #1  0xb7d971ac in ns_insert_sub_keyed_str (interp=0x804f040,
 self=0xb6471dbc, key=0xb634e500, value=0x82c31e4)
     at ./src/pmc/namespace.pmc:92
 #2  0xb7d97c06 in Parrot_NameSpace_set_pmc_keyed_str (interp=0x804f040,
 pmc=0xb6471dbc, key=0xb634e500, value=0x82c31e4)
     at ./src/pmc/namespace.pmc:246
 #3  0xb7b3fd5f in Parrot_set_global (interp=0x804f040, ns=0xb6471dbc,
 globalname=0xb634e500, val=0x82c31e4) at src/global.c:363
 #4  0xb7d97a26 in Parrot_NameSpace_set_pmc_keyed (interp=0x804f040,
 pmc=0xb6471dbc, key=0x0, value=0x82c31e4)
     at ./src/pmc/namespace.pmc:349
 #5  0xb7ae83f8 in Parrot_set_p_kc_p (cur_opcode=0xb6530330,
 interp=0x804f040) at src/ops/set.ops:427
 #6  0xb7b7a4cc in runops_slow_core (interp=0x804f040, pc=0xb6530330) at
 src/runops_cores.c:222
 #7  0xb7b4b019 in runops_int (interp=0x804f040, offset=3325) at
 src/interpreter.c:938
 #8  0xb7b4b8f3 in runops (interp=0x804f040, offs=3325) at
 src/inter_run.c:103
 #9  0xb7b4bbb1 in runops_args (interp=0x804f040, sub=0xb63f5058,
 obj=0x80b6f98, meth_unused=0x0, sig=0xb7e47f60 "vP",
     ap=0xbfb9142c "lK??lK??4.?x\024??\202>[EMAIL PROTECTED]") at
 src/inter_run.c:240
 #10 0xb7b4bcec in Parrot_runops_fromc_args (interp=0x804f040,
 sub=0xb63f5058, sig=0xb7e47f60 "vP") at src/inter_run.c:305
 #11 0xb7b34037 in Parrot_ex_throw_from_c (interp=0x804f040,
 exception=0xb63f4b6c) at src/exceptions.c:310
 #12 0xb7b340fd in Parrot_ex_throw_from_c_args (interp=0x804f040,
 ret_addr=0x0, exitcode=20,
     format=0xb7e4b14c "Class %Ss already registered!\n") at
 src/exceptions.c:377
 #13 0xb7b6df3a in fail_if_type_exists (interp=0x804f040, name=0xb63f4bdc)
 at src/oo.c:533
 #14 0xb7b6dfa4 in Parrot_oo_register_type (interp=0x804f040,
 name=0xb63f4bdc) at src/oo.c:564
 #15 0xb7d643f9 in init_class_from_hash (interp=0x804f040, self=0xb63f4e98,
 info=0xb63f4d10) at ./src/pmc/class.pmc:222
 #16 0xb7d65e86 in Parrot_Class_init_pmc (interp=0x804f040, pmc=0xb63f4e98,
 init_data=0x81e4a8c) at ./src/pmc/class.pmc:512
 #17 0xb7b79941 in pmc_new_init (interp=0x804f040, base_type=50,
 init=0x81e4a8c) at src/pmc.c:385
 #18 0xb7ade958 in Parrot_newclass_p_p (cur_opcode=0xb60e8d70,
 interp=0x804f040) at src/ops/object.ops:254
 #19 0xb7b7a4cc in runops_slow_core (interp=0x804f040, pc=0xb60e8d70) at
 src/runops_cores.c:222
 #20 0xb7b4b019 in runops_int (interp=0x804f040, offset=3325) at
 src/interpreter.c:938
 #21 0xb7b4b8f3 in runops (interp=0x804f040, offs=3325) at
 src/inter_run.c:103
 #22 0xb7b4bbb1 in runops_args (interp=0x804f040, sub=0x81e2d3c,
 obj=0x80b6f98, meth_unused=0x0, sig=0xb7e47f60 "vP",
     ap=0xbfb9177c "?\031\036\b?\031\036\b4.??\027??\202>[EMAIL PROTECTED]")
 at src/inter_run.c:240
 #23 0xb7b4bcec in Parrot_runops_fromc_args (interp=0x804f040,
 sub=0x81e2d3c, sig=0xb7e47f60 "vP") at src/inter_run.c:305
 #24 0xb7b34037 in Parrot_ex_throw_from_c (interp=0x804f040,
 exception=0x81e19fc) at src/exceptions.c:310
 #25 0xb7b340fd in Parrot_ex_throw_from_c_args (interp=0x804f040,
 ret_addr=0x0, exitcode=20,
     format=0xb7e4b14c "Class %Ss already registered!\n") at
 src/exceptions.c:377
 #26 0xb7b6df3a in fail_if_type_exists (interp=0x804f040, name=0x81e1a88)
 at src/oo.c:533
 #27 0xb7b6dfa4 in Parrot_oo_register_type (interp=0x804f040,
 name=0x81e1a88) at src/oo.c:564
 #28 0xb7d643f9 in init_class_from_hash (interp=0x804f040, self=0x81e28f8,
 info=0x81e26e4) at ./src/pmc/class.pmc:222
 #29 0xb7d65e86 in Parrot_Class_init_pmc (interp=0x804f040, pmc=0x81e28f8,
 init_data=0x81e4a8c) at ./src/pmc/class.pmc:512
 #30 0xb7b79941 in pmc_new_init (interp=0x804f040, base_type=50,
 init=0x81e4a8c) at src/pmc.c:385
 #31 0xb7ade958 in Parrot_newclass_p_p (cur_opcode=0xb60e8d70,
 interp=0x804f040) at src/ops/object.ops:254
 #32 0xb7b7a4cc in runops_slow_core (interp=0x804f040, pc=0xb60e8d70) at
 src/runops_cores.c:222
 #33 0xb7b4b019 in runops_int (interp=0x804f040, offset=3) at
 src/interpreter.c:938
 #34 0xb7b4b8f3 in runops (interp=0x804f040, offs=3) at src/inter_run.c:103
 #35 0xb7b4bbb1 in runops_args (interp=0x804f040, sub=0x80ef9f8,
 obj=0x80b6f98, meth_unused=0x0, sig=0xb7e47c1f "vP",
     ap=0xbfb91acc
 "[EMAIL PROTECTED]")
 at src/inter_run.c:240
 #36 0xb7b4bcec in Parrot_runops_fromc_args (interp=0x804f040,
 sub=0x80ef9f8, sig=0xb7e47c1f "vP") at src/inter_run.c:305
 #37 0xb7b31597 in Parrot_runcode (interp=0x804f040, argc=2,
 argv=0xbfb91c38) at src/embed.c:959
 #38 0xb7e22518 in imcc_run_pbc (interp=0x804f040, obj_file=0,
 output_file=0x0, argc=2, argv=0xbfb91c38)
     at compilers/imcc/main.c:790
 #39 0xb7e22fe5 in imcc_run (interp=0x804f040, sourcefile=0xbfb929c9
 "tcl.pbc", argc=2, argv=0xbfb91c38)
     at compilers/imcc/main.c:1078
 #40 0x080489a8 in main (argc=2, argv=0xbfb91c38) at src/main.c:61

 }}}

-- 
Ticket URL: <https://trac.parrot.org/parrot/ticket/10>
Parrot <http://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets

Reply via email to