# 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,

Reply via email to