[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Texmacs-dev] Non-fatal make error - no big deal
From: |
Gabriel Dos Reis |
Subject: |
Re: [Texmacs-dev] Non-fatal make error - no big deal |
Date: |
28 Feb 2003 13:19:34 +0100 |
Martin Costabel <address@hidden> writes:
| Nix N. Nix wrote:
| []
| > src/maple_filter.cc:27: `string' was not declared in this scope
| []
| > I think this has been around since about 1.0.1.5 (IIRC). Is it just
| > me
| > ? As I said, it's no big deal, I'm just curious.
|
| No, it's not just you. I reported it to this list some days ago. There
| was no explanation given yet. It seems to be a gcc-2 vs gcc-3
| thing.
The program is in error because the entire C++ standard library is put
in the standard namespace std as per the language definition. The
library shipped with GCC-2.95.x is known *not* to be conformant.
| With gcc-2.95.2 it compiles OK (at least on Darwin/Mac OSX),
| but with gcc-3.1 it breaks.
GCC-2.95.2 accepted the code because
* on the library side: all standard entities were in the global
namespace instead of the standard namespace.
* on the compiler side: the compiler had special magic to handle
"std::" just as /* nothing */. That was done as an attempt to
make conformant codes to compile successfully.
Now that GCC-3.x is much more conformant, the compiler built-in hack
has been removed (for good things, because it caused us to reject some
well-formed programs).
The fix is to prefix standard entities with std::. That will work
with both GCC-2.95.x and GCC-3.x
HTH
-- Gaby
Re: [Texmacs-dev] Non-fatal make error - no big deal, Joris van der Hoeven, 2003/02/27