On Tue, Jul 10, 2012 at 6:51 AM, Dominique Dhumieres <domi...@lps.ens.fr> wrote: > Hi Sterling, > > On x86_64-apple-darwin10 the test fails with > > FAIL: g++.dg/debug/dwarf2/pubnames-2.C scan-assembler > .section\t.debug_pubnames > FAIL: g++.dg/debug/dwarf2/pubnames-2.C scan-assembler > "_GLOBAL__sub_I__ZN3one3c1vE\\\\0"+[ \t]+[#;]+[ \t]+external name > FAIL: g++.dg/debug/dwarf2/pubnames-2.C scan-assembler > .section\t.debug_pubtypes > > (note that looking at the test I was expecting much more failures;-). > Grepping the assembly for 'debug_pubnames' and 'ZN3one3c1vE' returns > > .section __DWARF,__debug_pubnames,regular,debug > Lsection__debug_pubnames: > > and > > .globl __ZN3one3c1vE > __ZN3one3c1vE: > leal __ZN3one3c1vE-L3$pb(%ebx), %eax > leal __ZN3one3c1vE-L8$pb(%ebx), %eax > leal __ZN3one3c1vE-L8$pb(%ebx), %eax > .ascii "_ZN3one3c1vE\0" # DW_AT_linkage_name > .long __ZN3one3c1vE > > So fixing the debug_pubnames failures for Darwin is fairly easy, > but I am not sure what to pick for ZN3one3c1vE.
Hmm. None of those from the grep appear to be inside the pubnames section. The particular pubname here is a global constructor, and Darwin (coff?) must handle those differently than Elf. I think it is OK to either just delete the offending check, or to conditionalize it on Elf--not sure how to do that. Sterling