Common areas and as

David Marston david at
Thu Oct 23 14:43:01 PDT 2003

In message <708990454c.peter at> you wrote:

> In message <4c766a454c.peter at>
>           Peter Naulls <peter at> wrote:
> > In any case, I've commited David's patches, and some of my own, which
> > now allow me to build a working hello world, which is promising.
> > Whether GCC itself works we'll soon see.
> Which it doesn't (the RISC OS binary, that is).  At least this gives a
> complete build, and the cross compiler is useful again.

I still don't think everything's right since I still can't build
libfile. The 'std::numpunct<char>::id' symbol appears in at least
libfile/LibDir.o, libfile/LibVersion.o and libstdc/locale-inst.o which
all conflict with each other at the moment. (The ones in libfile are
generated with the ASM_OUTPUT_COMMON macro, and the one in locale-inst
with the ASM_OUTPUT_BSS macro if that helps).

I don't know enough about C++ templates and what they produce when
compiled to know whether this is sensible, or more usefully what the
significance is of the symbols generated in BSS compared to those
generated in COMMON.

I have actually managed to compile everything by changing
ASM_OUTPUT_COMMON to generate Common areas again (with individual
names), and by ASM_OUTPUT_BSS generating exactly the same thing, but I'd
prefer some more time to read the GCC internals documentation (scary) or
some thoughts from someone who understands GCC (Nick) before suggesting
we do this. (This actually changes the ASM_OUTPUT_COMMON macro back to
what it was around version 1.8 BTW).

David Marston
david at

More information about the gcc mailing list