# New Ticket Created by Allison Randal # Please include the string: [perl #21476] # in the subject line of all future correspondence about this issue. # <URL: http://rt.perl.org/rt2/Ticket/Display.html?id=21476 >
I couldn't compile imcc under OS X because of a repeat of the old "ld: multiple definitions of symbol" problem (ticket #17159). I fixed that with the attached patch. Now that it compiles, several of the optimizer tests fail. The problem seems to be unrelated to the patch because the tests pass with the patch on my Slackware box. Hope this is useful. Allison ---- ... t/imcpasm/cfg.......ok t/imcpasm/opt1......ok 12/49# Failed test (t/imcpasm/opt1.t at line 168) # got: '' # expected: 'L1: # end # ' t/imcpasm/opt1......NOK 13# Failed test (t/imcpasm/opt1.t at line 178) # got: '' # expected: ' set I0, 5 # end # ' t/imcpasm/opt1......NOK 14# Failed test (t/imcpasm/opt1.t at line 188) # got: '' # expected: 'L1: # end # ' t/imcpasm/opt1......NOK 15# Failed test (t/imcpasm/opt1.t at line 198) # got: '' # expected: ' set I0, 5 # end # ' t/imcpasm/opt1......NOK 16# Failed test (t/imcpasm/opt1.t at line 208) # got: '' # expected: 'L1: # end # ' t/imcpasm/opt1......NOK 17# Failed test (t/imcpasm/opt1.t at line 218) # got: '' # expected: ' set I0, 5 # end # ' t/imcpasm/opt1......NOK 18# Failed test (t/imcpasm/opt1.t at line 228) # got: '' # expected: 'L1: # end # ' t/imcpasm/opt1......NOK 19# Failed test (t/imcpasm/opt1.t at line 238) # got: '' # expected: ' set I0, 5 # end # ' t/imcpasm/opt1......NOK 20# Failed test (t/imcpasm/opt1.t at line 248) # got: '' # expected: 'L1: # end # ' t/imcpasm/opt1......NOK 21# Failed test (t/imcpasm/opt1.t at line 258) # got: '' # expected: ' set I0, 5 # end # ' t/imcpasm/opt1......NOK 22# Failed test (t/imcpasm/opt1.t at line 268) # got: '' # expected: 'L1: # end # ' t/imcpasm/opt1......NOK 23# Failed test (t/imcpasm/opt1.t at line 278) # got: '' # expected: ' set I0, 5 # end # ' t/imcpasm/opt1......NOK 24# Failed test (t/imcpasm/opt1.t at line 288) # got: '' # expected: 'L1: # end # ' t/imcpasm/opt1......NOK 25# Failed test (t/imcpasm/opt1.t at line 298) # got: '' # expected: ' set I0, 5 # end # ' t/imcpasm/opt1......ok 28/49# Failed test (t/imcpasm/opt1.t at line 328) # got: '' # expected: 'L1: # end # ' t/imcpasm/opt1......NOK 29# Failed test (t/imcpasm/opt1.t at line 338) # got: '' # expected: ' set I0, 5 # end # ' t/imcpasm/opt1......ok 49/49# Looks like you failed 16 tests of 49. t/imcpasm/opt1......dubious Test returned status 16 (wstat 4096, 0x1000) DIED. FAILED tests 13-26, 29-30 Failed 16/49 tests, 67.35% okay (-1 skipped test: 32 okay, 65.31%) t/imcpasm/opt2......ok ... -- attachment 1 ------------------------------------------------------ url: http://rt.perl.org/rt2/attach/53326/40198/c54bdc/extern_optimize_enums.patch
Index: languages/imcc/cfg.h =================================================================== RCS file: /cvs/public/parrot/languages/imcc/cfg.h,v retrieving revision 1.8 diff -u -r1.8 cfg.h --- languages/imcc/cfg.h 5 Mar 2003 16:08:50 -0000 1.8 +++ languages/imcc/cfg.h 6 Mar 2003 05:57:26 -0000 @@ -22,7 +22,7 @@ int flag; } Basic_block; -enum { +EXTERN enum { BB_IS_SUB = 1 << 0 } block_enum_flags; Index: languages/imcc/imc.h =================================================================== RCS file: /cvs/public/parrot/languages/imcc/imc.h,v retrieving revision 1.31 diff -u -r1.31 imc.h --- languages/imcc/imc.h 5 Mar 2003 16:08:50 -0000 1.31 +++ languages/imcc/imc.h 6 Mar 2003 05:57:26 -0000 @@ -85,7 +85,7 @@ EXTERN int allocated; -enum { +EXTERN enum { OPT_NONE, OPT_PRE, OPT_CFG = 0x002,