On 10/05/2010 16:19, Jack Howarth wrote: > Compiler executable checksum: c54eb6db87684e4d5a5bb9ad02c2b2c4 > 20081222_1.c:16: error: 'EXT_x' aliased to undefined symbol 'INT_x' > > which I assume means this error message is coming from the compiler and not > the linker. So it still unclear to me if this is a bug in the alias attribute > support in gcc for darwin or in darwin's assembler or linker.
I get the same on COFF, so it isn't the assembler or linker, and visibility is a red herring, therefore it must be a problem in the compiler's understanding of aliases; QED, I would have thought. Haven't had time to dig deeper yet. (On COFF with GAS, the compiler uses a .set directive to implement the alias.) The error comes from finish_aliases_1 in varasm.c, where it is suppressed in the case of a weakref. I don't know why. cheers, DaveK