[RFC] libstdc++/6720 and libstdc++/6671
Zack Weinberg
zack@codesourcery.com
Wed May 22 22:30:00 GMT 2002
On Wed, May 22, 2002 at 02:45:43PM -0700, Mark Mitchell wrote:
>
> I'd be interested to hear what other committee members thing the
> language that Gaby quoted means. I can certainly read it to mean what
> Gaby thought it meant; in particular, that even if -I options are in
> play you get the right header. You can read it that way due to the
> fact that all of 16.2 is essentially implementation-defined; the
> paragraph Gaby's quoting seems to say "even despite all that
> implementation-defined stuff, this particular usage has defined
> behavior."
>
> I don't know *why* the standard would say that. If it were up to me,
> I'd certainly rather just let -I do whatever it normally does. But,
> we have to work with what we've got.
The situation is exactly the same as predefined macros in the user
namespace. There exists a mode of the compiler in which it doesn't
define any of those, and a mode in which it does. We only claim that
the former is conforming.
Likewise, there exists a mode of the compiler in which including
<cmath> gets you what the standard specified for <cmath>, and a mode
in which it doesn't. We only claim that the former is conforming.
The precise details of how you get each mode are clearly documented --
you say -std=cxx98 (or =c89, or whatever) to get a clean macro
namespace; you don't put any shadowing headers ahead of the ones we
provided, to get the standard headers.
zw
More information about the Libstdc++
mailing list