On Mon, Jun 18, 2012 at 7:12 AM, Joseph S. Myers <jos...@codesourcery.com> wrote: > On Mon, 18 Jun 2012, Steven Bosscher wrote: > >> For targets that do not define NO_IMPLICIT_EXTERN_C, GCC assumes that >> included system headers are implicitly wrapped in 'extern "C" {...}'. >> I could not find where this target macro was introduced, but it is >> very old (it is already mentioned in FSFChangeLog.10 for a change in >> 1995). AFAICT, today all supported targets have C++-compatible headers > > May have been introduced by: > > Fri Nov 5 05:48:04 1993 Richard Stallman (r...@mole.gnu.ai.mit.edu) > > * cccp.c (main): Handle NO_IMPLICIT_EXTERN_C. > >> (according to one comment, even hpux8 had C++-compatible system >> headers :-), so NO_IMPLICIT_EXTERN_C shouldn't be necessary anymore. > > It was previously said that AIX headers needed it > <http://gcc.gnu.org/ml/gcc/2005-05/msg00381.html>. That of course was AIX > headers as of 2005; I don't know whether seven years later any version of > AIX supported by GCC trunk still needs this.
Users continue to build recent versions of GCC on AIX 4.3, 5.1 and 5.2. Recent versions of AIX may be C++-safe, but I do not know how to verify that. Some headers have extern "C" { } wrappers and other do not. Thanks, David