Targets using implicit extern "C"
Mark Mitchell
mark@codesourcery.com
Wed May 11 01:53:00 GMT 2005
Joe Buck wrote:
> Right, but you don't need the answer to the question until it's time to
> build libstdc++, and you can't build libstdc++ without a C library.
> So can't the test be deferred until that point?
I don't think that's a good idea. People build compilers without
headers frequently, and this really can be sensibly defaulted in the
configuration, perhaps with a configure option to override. Also, the
presence of __cplusplus in some system headers isn't enough to make sure
that the headers are really C++-aware; I've seen systems with a few such
headers, but not complete awareness.
The argument that there's no right answer for *-elf seems odd to me. We
already make assumptions for *-elf that may not be correct for all
systems, like how to run static initializers, etc. We certainly can't
build libstdc++ without knowing about the target C library.
I'd be willing to consider the argument that this should actually be a
-f switch, with a default determined by the target triplet. That would
make it possible to use a *-elf compiler with different
headers/libraries that you got from somewhere without having to rebuild
the compiler, which seems better than any autoconfery.
--
Mark Mitchell
CodeSourcery, LLC
mark@codesourcery.com
(916) 791-8304
More information about the Gcc
mailing list