# New Ticket Created by [EMAIL PROTECTED] # Please include the string: [perl #32092] # in the subject line of all future correspondence about this issue. # <URL: http://rt.perl.org:80/rt3/Ticket/Display.html?id=32092 >
--- osname= linux osvers= 2.4.21-14.elsmp arch= i386-linux-thread-multi cc= gcc 3.4.2 20041006 (Red Hat 3.4.2-5) --- Flags: category=core severity=low ack=no --- Parrot segfaults when executing the appended function. If I shorten the last definition of $S0 the program completes normally. When I replace the last definition of $S0 with the "open - read - close" sequence the program completes normally as well (the file literal-list-1.text contains the last definition of $S0 as text). Unfortunately I cannot extract a small test case, because everything works all right as soon as I remove the calls to the application specific functions. I can provide the full program, if this helps. .sub test_compile_literal_list $P0 = empty_list() $P1 = cons($P0, $P0) $S0 = ".local pmc tmp_0\n" $S0 .= "tmp_0 = find_global \"%the-empty-list\"\n" do_test_compile_literal_list($P0, $S0) $S0 = ".local pmc tmp_1\n" $S0 .= "tmp_1 = find_global \"%the-empty-list\"\n" $S0 .= ".local pmc tmp_2\n" $S0 .= "tmp_2 = find_global \"%the-empty-list\"\n" $S0 .= ".local pmc tmp_0\n" $S0 .= "tmp_0 = cons(tmp_1, tmp_2)\n" do_test_compile_literal_list($P1, $S0) $P0 = parrot_string_to_symbol("foobar") $P1 = int_to_integer(1) $P2 = create_pmc_list_2($P0, $P1) #$P3 = open "literal-list-1.text", "<" #$S0 = read $P3, 1024 #close $P3 $S0 = "" $S0 = ".local string tmp_1\n" $S0 .= "tmp_1 = \"foobar\"\n" $S0 .= ".local pmc tmp_2\n" $S0 .= "tmp_2 = parrot_string_to_symbol(tmp_1)\n" $S0 .= ".local pmc tmp_4\n" $S0 .= "tmp_4 = new Integer\n" $S0 .= "tmp_4 = 1\n" $S0 .= ".local pmc tmp_5\n" $S0 .= "tmp_5 = find_global \"%the-empty-list\"\n" $S0 .= ".local pmc tmp_3\n" $S0 .= "tmp_3 = cons(tmp_4, tmp_5)\n" $S0 .= ".local pmc tmp_0\n" $S0 .= "tmp_0 = cons(tmp_2, tmp_3)\n" print $S0 do_test_compile_literal_list($P2, $S0) .end --- Summary of my parrot 0.1.1 configuration: configdate='Tue Oct 12 17:45:32 2004' Platform: osname=linux, archname=i386-linux-thread-multi jitcapable=1, jitarchname=i386-linux, jitosname=LINUX, jitcpuarch=i386 execcapable=1 perl=/usr/bin/perl Compiler: cc='gcc', ccflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm', Linker and Libraries: ld='gcc', ldflags=' -L/usr/local/lib', cc_ldflags='', libs='-lnsl -ldl -lm -lcrypt -lutil -lpthread -lrt -lgmp' Dynamic Linking: share_ext='.so', ld_share_flags='-shared -L/usr/local/lib -fPIC', load_ext='.so', ld_load_flags='-shared -L/usr/local/lib -fPIC' Types: iv=long, intvalsize=4, intsize=4, opcode_t=long, opcode_t_size=4, ptrsize=4, ptr_alignment=1 byteorder=1234, nv=double, numvalsize=8, doublesize=8 --- Environment: HOME LANG LANGUAGE LD_LIBRARY_PATH LOGDIR PATH SHELL