http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54083
Dominique d'Humieres <dominiq at lps dot ens.fr> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |howarth at bromo dot | |med.uc.edu --- Comment #4 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2012-09-23 21:35:49 UTC --- A patch has been posted at http://gcc.gnu.org/ml/gcc-patches/2012-09/msg01602.html and I have also tested it on x86_64-apple-darwin10. Note that it won't fix the failure for 32-bit hppa*-*-hpux*. The fix used also works for gcc.dg/attr-weakref-1.c --- ../_clean/gcc/testsuite/gcc.dg/attr-weakref-1.c 2012-03-12 19:39:57.000000000 +0100 +++ gcc/testsuite/gcc.dg/attr-weakref-1.c 2012-09-23 23:23:33.000000000 +0200 @@ -4,12 +4,13 @@ // This test requires support for undefined weak symbols. This support // is not available on hppa*-*-hpux*. The test is skipped rather than // xfailed to suppress the warning that would otherwise arise. -// { dg-skip-if "" { "*-*-darwin*" "hppa*-*-hpux*" } "*" { "" } } +// { dg-skip-if "" { "hppa*-*-hpux*" } "*" { "" } } // For kernel modules and static RTPs, the loader treats undefined weak // symbols in the same way as undefined strong symbols. The test // therefore fails to load, so skip it. // { dg-skip-if "" { "*-*-vxworks*" && nonpic } "*" { "-non-static" } } // { dg-options "-O2" } +// { dg-options "-Wl,-undefined,dynamic_lookup" { target *-*-darwin* } } // { dg-additional-sources "attr-weakref-1a.c" } // Copyright 2005 Free Software Foundation, Inc. For the record, following the suggestions of Richard Guenther and Tobias Burnus on IRC, I have tested the attached patch which mimics gcc.dg/attr-weakref-1.c and also works on x86_64-apple-darwin10 and powerpc-apple-darwin9.