gnu/67798: C++ can't compile anything with -ansi
Jack Lloyd
lloyd at randombit.net
Thu Jun 10 15:40:28 GMT 2004
>Number: 67798
>Category: gnu
>Synopsis: C++ can't compile anything with -ansi
>Confidential: no
>Severity: serious
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Thu Jun 10 15:40:20 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator: Jack Lloyd
>Release: 5.1
>Organization:
>Environment:
FreeBSD synacklabs01 5.1-RELEASE FreeBSD 5.1-RELEASE #0: Mon Mar 8 17:52:43 CST 2004 root@:/usr/src/sys/i386/compile/GENERIC i386
>Description:
Essentially using any C++ headers and compiling with the -ansi flag fails on FreeBSD 5.1, and probably most 5- releases (it was reported on the GCC list March 2003). I haven't tested 5.2/5.2.1, if this has been fixed please just close + let me know it's OK now.
There is a fairly complete analysis, including a proposed fix, in this thread from last year:
http://gcc.gnu.org/ml/libstdc++/2003-03/msg00329.html
Including virtually any standard ISO C++ header (iostream, string, cstdlib) and compiling with -ansi causes compilation failure due to missing decls in libc's headers.
>How-To-Repeat:
synacklabs01% g++ -v
Using built-in specs.
Configured with: FreeBSD/i386 system compiler
Thread model: posix
gcc version 3.2.2 [FreeBSD] 20030205 (release)
synacklabs01% cat test.cpp
#include <iostream>
int main()
{
std::cout << "Hello world" << std::endl;
}
synacklabs01% g++ -ansi test.cpp
In file included from /usr/include/g++/bits/fpos.h:45,
from /usr/include/g++/iosfwd:46,
from /usr/include/g++/ios:44,
from /usr/include/g++/ostream:45,
from /usr/include/g++/iostream:45,
from test.cpp:1:
/usr/include/g++/cwchar:229: `wcstoll' not declared
/usr/include/g++/cwchar:230: `wcstoull' not declared
/usr/include/g++/cwchar:236: `wcstoll' not declared
/usr/include/g++/cwchar:237: `wcstoull' not declared
In file included from /usr/include/g++/bits/stl_algobase.h:67,
from /usr/include/g++/memory:54,
from /usr/include/g++/string:48,
from /usr/include/g++/bits/localefwd.h:49,
from /usr/include/g++/ios:48,
from /usr/include/g++/ostream:45,
from /usr/include/g++/iostream:45,
from test.cpp:1:
/usr/include/g++/cstdlib:138: `lldiv_t' not declared
/usr/include/g++/cstdlib:148: syntax error before `(' token
In file included from /usr/include/g++/bits/stl_algobase.h:67,
from /usr/include/g++/memory:54,
from /usr/include/g++/string:48,
from /usr/include/g++/bits/localefwd.h:49,
from /usr/include/g++/ios:48,
from /usr/include/g++/ostream:45,
from /usr/include/g++/iostream:45,
from test.cpp:1:
/usr/include/g++/cstdlib:125:1: unterminated #if
/usr/include/g++/cstdlib:44:1: unterminated #ifndef
In file included from /usr/include/g++/memory:54,
from /usr/include/g++/string:48,
from /usr/include/g++/bits/localefwd.h:49,
from /usr/include/g++/ios:48,
from /usr/include/g++/ostream:45,
from /usr/include/g++/iostream:45,
from test.cpp:1:
/usr/include/g++/bits/stl_algobase.h:61:1: unterminated #ifndef
In file included from /usr/include/g++/string:48,
from /usr/include/g++/bits/localefwd.h:49,
from /usr/include/g++/ios:48,
from /usr/include/g++/ostream:45,
from /usr/include/g++/iostream:45,
from test.cpp:1:
/usr/include/g++/memory:49:1: unterminated #ifndef
In file included from /usr/include/g++/bits/localefwd.h:49,
from /usr/include/g++/ios:48,
from /usr/include/g++/ostream:45,
from /usr/include/g++/iostream:45,
from test.cpp:1:
/usr/include/g++/string:40:1: unterminated #ifndef
In file included from /usr/include/g++/ios:48,
from /usr/include/g++/ostream:45,
from /usr/include/g++/iostream:45,
from test.cpp:1:
/usr/include/g++/bits/localefwd.h:40:1: unterminated #ifndef
In file included from /usr/include/g++/ostream:45,
from /usr/include/g++/iostream:45,
from test.cpp:1:
/usr/include/g++/ios:39:1: unterminated #ifndef
In file included from /usr/include/g++/iostream:45,
from test.cpp:1:
/usr/include/g++/ostream:40:1: unterminated #ifndef
In file included from test.cpp:1:
/usr/include/g++/iostream:39:1: unterminated #ifndef
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list