# New Ticket Created by Peter Sinnott # Please include the string: [perl #34617] # in the subject line of all future correspondence about this issue. # <URL: https://rt.perl.org/rt3/Ticket/Display.html?id=34617 >
--- osname= linux osvers= 2.4.27-ti1211 arch= i386-linux-thread-multi cc= cc --- Flags: category=core severity=medium ack=no --- Runing make test with parrot compiled with gcc 3.3.5 is failing the following test. Failed Test Stat Wstat Total Fail Failed List of Failed ------------------------------------------------------------------------------- t/library/md5.t 4 1024 4 4 100.00% 1-4 t/pmc/mmd.t 6 1536 18 6 33.33% 10-15 t/pmc/object-meths.t 2 512 29 2 6.90% 28-29 2 tests and 63 subtests skipped. Failed 3/145 test scripts, 97.93% okay. 12/2370 subtests failed, 99.49% okay. These seem to be failing with linux gcc 2.72 , 3.2 , 3.3 and 3.4 but not 2.95 gcc3.3 on free bsd is also failing. From a quick look at the cores and based on them all starting to fail around the same time they seem to be caused by the same thing. Failure started about 5pm gmt(or maybe ist,whatever we are now) http://unlinked.vm.bytemark.co.uk/tinder//parrot/status.html Backtrace #0 0x08161abd in fixup_bsrs (interpreter=0x82f9f08) at imcc/pbc.c:482 482 assert(s1->unit); (gdb) backtrace #0 0x08161abd in fixup_bsrs (interpreter=0x82f9f08) at imcc/pbc.c:482 #1 0x08163471 in e_pbc_close (interpreter=0x82f9f08, param=0x0) at imcc/pbc.c:1180 #2 0x08159ba7 in emit_close (interp=0x82f9f08, param=0x0) at imcc/instructions.c:561 #3 0x08156a93 in imc_compile_all_units (interp=0x82f9f08) at imcc/imc.c:46 #4 0x0809d9c9 in main (argc=1, argv=0xbffff75c) at imcc/main.c:538 I have looked at the object meth failures and isolated the failures to .sub main @MAIN .local pmc o, m, cl o = getstdout $I0 = "puts"(o, "ok 3\n") .end .sub main @MAIN .local pmc x, y, cl, m x = new Float x = 1.0 print "function " y = "cos"(x) print y print "\n" .end If I run either of these ie ./parrot eg.imc parrot cores If I run ./parrot -o eg.pasm eg.imc and then run ./parrot eg.pasm I get error:imcc:undefined identifier 'puts' or error:imcc:undefined identifier 'cos' If I replace set_p_pc P0, puts with find_name P0 , "puts" in the pasm the programs work. With parrot compiled with gcc 295 I can run the imc above but parrot generates the same pasm as with the broken parrots and fails with the same error message error:imcc:undefined identifier 'puts' --- Summary of my parrot 0.1.2 configuration: configdate='Wed Mar 30 18:12:42 2005' 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='cc', ccflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', Linker and Libraries: ld='cc', ldflags=' -L/usr/local/lib', cc_ldflags='', libs='-ldl -lm -lpthread -lcrypt -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