For the following program #define _POSIX_C_SOURCE 1 #include <iostream> g++ issues the following error message: /gcc-current/bin/../lib/gcc/i386-unknown-freebsd5.4/4.1.0/../../../../include/c++/4.1.0/cwchar:166: error: '::vfwscanf' has not been declared /gcc-current/bin/../lib/gcc/i386-unknown-freebsd5.4/4.1.0/../../../../include/c++/4.1.0/cwchar:170: error: '::vswscanf' has not been declared /gcc-current/bin/../lib/gcc/i386-unknown-freebsd5.4/4.1.0/../../../../include/c++/4.1.0/cwchar:174: error: '::vwscanf' has not been declared /gcc-current/bin/../lib/gcc/i386-unknown-freebsd5.4/4.1.0/../../../../include/c++/4.1.0/cwchar:191: error: '::wcstof' has not been declared This bug report is _not_ about the specific error messages as such, but about the fact that g++ fails to provide the full #include stack, that is, a) the name of the file compiled, and b) the name of all the #include files involved which led to this. Contrast this with the corresponding diagnosis from GCC 3.4: In file included from /usr/include/c++/3.4/bits/postypes.h:46, from /usr/include/c++/3.4/iosfwd:50, from /usr/include/c++/3.4/ios:44, from /usr/include/c++/3.4/ostream:45, from /usr/include/c++/3.4/iostream:45, from x.cc:3: /usr/include/c++/3.4/cwchar:166: error: `::vfwscanf' has not been declared /usr/include/c++/3.4/cwchar:170: error: `::vswscanf' has not been declared /usr/include/c++/3.4/cwchar:174: error: `::vwscanf' has not been declared /usr/include/c++/3.4/cwchar:191: error: `::wcstof' has not been declared which is much more useful.
-- Summary: [4.1 regression] C++ fails to print #include stack Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: gerald at pfeifer dot com CC: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24009