This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/57699] Disable empty parameter list misinterpretation in libstdc++ headers when !defined(NO_IMPLICIT_EXTERN_C)


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57699

--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Paolo already patched libstdc++ and there's nothing to fix in eCos.

The point is that if I write

extern "C" {
void f();
}

in a libstdc++ header it should mean what the C++ standard says it means.

The implicit extern C kluge is for system headers not known to be C++
compatible, but libstdc++ headers are (of course) C++ compatible, so applying
the kluge is useless and causes bugs when people try to write valid C++, only
to find it has a different meaning on different platforms.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]