aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@acm.org>2018-07-05 13:11:44 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2018-07-05 13:11:44 +0000
commit09cff37bfdcc9407a72262cbdd6fd3350488d934 (patch)
tree8a12aa4815a59efd810f5c77daa77152e9a589c1 /gcc/config
parent6fc2658638727f52780fe35c1dfabca402fd9481 (diff)
downloadgcc-09cff37bfdcc9407a72262cbdd6fd3350488d934.zip
gcc-09cff37bfdcc9407a72262cbdd6fd3350488d934.tar.gz
gcc-09cff37bfdcc9407a72262cbdd6fd3350488d934.tar.bz2
Replace NO_IMPLICIT_EXTERN_C with SYSTEM_IMPLICIT_EXTERN_C.
gcc/ Replace NO_IMPLICIT_EXTERN_C with SYSTEM_IMPLICIT_EXTERN_C. * doc/cpp.texi: Update comment. * doc/tm.texi: Rebuilt. * doc/tm.texi.in (NO_IMPLICIT_EXTERN_C): Replace with ... (SYSTEM_IMPLICIT_EXTERN_C): ... this, opposite sense. * doc/extend.texi (Backwards Compatibility): Clarify it is system headers affected by extern "C". * system.h: Poison NO_IMPLICIT_EXTERN_C. * config/alpha/alpha.h, config/arm/uclinux-elf.h, config/bfin/elf.h, config/cris/cris.h, config/darwin.h, config/dragonfly.h, config/freebsd.h, config/gnu-user.h, config/i386/cygming.h, config/i386/djgpp.h, config/i386/nto.h, config/ia64/hpux.h, config/lm32/lm32.h, config/lm32/uclinux-elf.h, config/lynx.h, config/mips/elf.h, config/mmix/mmix.h, config/netbsd.h, config/pa/pa-hpux.h, config/powerpcspe/sysv4.h, config/riscv/elf.h, config/rs6000/sysv4.h, config/rtems.h, config/s390/tpf.h, config/sh/newlib.h, config/sol2.h, config/sparc/openbsd64.h, config/sparc/sp-elf.h, config/sparc/sp64-elf.h, config/spu/spu.h, config/stormy16/stormy16.h, config/v850/v850.h, config/visium/visium.h, config/vx-common.h, config/xtensa/elf.h: Don't define NO_IMPLICIT_EXTERN_C. * config/rs6000/aix.h: Set SYSTEM_IMPLICIT_EXTERN_C. gcc/c-family/ * c-lex.c (fe_file_change): Check SYSTEM_IMPLICIT_EXTERN_C not NO_IMPLICIT_EXTERN_C. gcc/cp/ * cp/decl.c (decls_match): Check SYSTEM_IMPLICIT_EXTERN_C not NO_IMPLICIT_EXTERN_C. * cp/parser.c (cp_parser_parameter_declaration_clause): Likewise. From-SVN: r262437
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/alpha/alpha.h3
-rw-r--r--gcc/config/arm/uclinux-elf.h3
-rw-r--r--gcc/config/bfin/elf.h2
-rw-r--r--gcc/config/cris/cris.h2
-rw-r--r--gcc/config/darwin.h3
-rw-r--r--gcc/config/dragonfly.h4
-rw-r--r--gcc/config/freebsd.h4
-rw-r--r--gcc/config/gnu-user.h3
-rw-r--r--gcc/config/i386/cygming.h3
-rw-r--r--gcc/config/i386/djgpp.h3
-rw-r--r--gcc/config/i386/nto.h2
-rw-r--r--gcc/config/ia64/hpux.h3
-rw-r--r--gcc/config/lm32/lm32.h4
-rw-r--r--gcc/config/lm32/uclinux-elf.h4
-rw-r--r--gcc/config/lynx.h6
-rw-r--r--gcc/config/mips/elf.h2
-rw-r--r--gcc/config/mmix/mmix.h2
-rw-r--r--gcc/config/netbsd.h4
-rw-r--r--gcc/config/pa/pa-hpux.h4
-rw-r--r--gcc/config/powerpcspe/sysv4.h4
-rw-r--r--gcc/config/riscv/elf.h2
-rw-r--r--gcc/config/rs6000/aix.h3
-rw-r--r--gcc/config/rs6000/sysv4.h4
-rw-r--r--gcc/config/rtems.h4
-rw-r--r--gcc/config/s390/tpf.h1
-rw-r--r--gcc/config/sh/newlib.h4
-rw-r--r--gcc/config/sol2.h3
-rw-r--r--gcc/config/sparc/openbsd64.h3
-rw-r--r--gcc/config/sparc/sp-elf.h3
-rw-r--r--gcc/config/sparc/sp64-elf.h3
-rw-r--r--gcc/config/spu/spu.h2
-rw-r--r--gcc/config/stormy16/stormy16.h2
-rw-r--r--gcc/config/v850/v850.h6
-rw-r--r--gcc/config/visium/visium.h8
-rw-r--r--gcc/config/vx-common.h4
-rw-r--r--gcc/config/xtensa/elf.h3
36 files changed, 3 insertions, 117 deletions
diff --git a/gcc/config/alpha/alpha.h b/gcc/config/alpha/alpha.h
index 1d32385..6802ef3 100644
--- a/gcc/config/alpha/alpha.h
+++ b/gcc/config/alpha/alpha.h
@@ -922,7 +922,4 @@ extern long alpha_auto_offset;
/* By default, turn on GDB extensions. */
#define DEFAULT_GDB_EXTENSIONS 1
-/* The system headers under Alpha systems are generally C++-aware. */
-#define NO_IMPLICIT_EXTERN_C
-
#define TARGET_SUPPORTS_WIDE_INT 1
diff --git a/gcc/config/arm/uclinux-elf.h b/gcc/config/arm/uclinux-elf.h
index 54879c7..f78f279 100644
--- a/gcc/config/arm/uclinux-elf.h
+++ b/gcc/config/arm/uclinux-elf.h
@@ -48,9 +48,6 @@
} \
while (false)
-/* Do not assume anything about header files. */
-#define NO_IMPLICIT_EXTERN_C
-
/* The GNU C++ standard library requires that these macros be defined. */
#undef CPLUSPLUS_CPP_SPEC
#define CPLUSPLUS_CPP_SPEC "-D_GNU_SOURCE %(cpp)"
diff --git a/gcc/config/bfin/elf.h b/gcc/config/bfin/elf.h
index d8b0f37..ae16050 100644
--- a/gcc/config/bfin/elf.h
+++ b/gcc/config/bfin/elf.h
@@ -70,5 +70,3 @@ asm (TEXT_SECTION_ASM_OP);
#undef SUBTARGET_DRIVER_SELF_SPECS
#define SUBTARGET_DRIVER_SELF_SPECS \
"%{mfdpic:-msim} %{mid-shared-library:-msim}"
-
-#define NO_IMPLICIT_EXTERN_C
diff --git a/gcc/config/cris/cris.h b/gcc/config/cris/cris.h
index 84c9292..e15f3f6 100644
--- a/gcc/config/cris/cris.h
+++ b/gcc/config/cris/cris.h
@@ -1030,8 +1030,6 @@ enum cris_symbol_type
#define FUNCTION_MODE QImode
-#define NO_IMPLICIT_EXTERN_C
-
/*
* Local variables:
* eval: (c-set-style "gnu")
diff --git a/gcc/config/darwin.h b/gcc/config/darwin.h
index 16c3b60..591188a 100644
--- a/gcc/config/darwin.h
+++ b/gcc/config/darwin.h
@@ -43,9 +43,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#define DARWIN_X86 0
#define DARWIN_PPC 0
-/* Don't assume anything about the header files. */
-#define NO_IMPLICIT_EXTERN_C
-
/* Suppress g++ attempt to link in the math library automatically. */
#define MATH_LIBRARY ""
diff --git a/gcc/config/dragonfly.h b/gcc/config/dragonfly.h
index ec9d9e0..4f53d22 100644
--- a/gcc/config/dragonfly.h
+++ b/gcc/config/dragonfly.h
@@ -104,10 +104,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#undef OBJECT_FORMAT_ELF
#define OBJECT_FORMAT_ELF
-/* Don't assume anything about the header files. */
-#undef NO_IMPLICIT_EXTERN_C
-#define NO_IMPLICIT_EXTERN_C 1
-
/* Follow DragonFly's standard headers (<machine/stdint.h>, etc...). */
#undef WCHAR_TYPE
diff --git a/gcc/config/freebsd.h b/gcc/config/freebsd.h
index 0c8bd29..9463dea 100644
--- a/gcc/config/freebsd.h
+++ b/gcc/config/freebsd.h
@@ -68,10 +68,6 @@ along with GCC; see the file COPYING3. If not see
#undef OBJECT_FORMAT_ELF
#define OBJECT_FORMAT_ELF
-/* Don't assume anything about the header files. */
-#undef NO_IMPLICIT_EXTERN_C
-#define NO_IMPLICIT_EXTERN_C 1
-
/* Follow FreeBSD's standard headers (<sys/_types.h> etc...). */
#undef WCHAR_TYPE
diff --git a/gcc/config/gnu-user.h b/gcc/config/gnu-user.h
index cba3c0b..aff034d 100644
--- a/gcc/config/gnu-user.h
+++ b/gcc/config/gnu-user.h
@@ -26,9 +26,6 @@ a copy of the GCC Runtime Library Exception along with this program;
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
<http://www.gnu.org/licenses/>. */
-/* Don't assume anything about the header files. */
-#define NO_IMPLICIT_EXTERN_C
-
#undef ASM_APP_ON
#define ASM_APP_ON "#APP\n"
diff --git a/gcc/config/i386/cygming.h b/gcc/config/i386/cygming.h
index 1d35885..80a0a37 100644
--- a/gcc/config/i386/cygming.h
+++ b/gcc/config/i386/cygming.h
@@ -378,9 +378,6 @@ do { \
#endif
#endif
-/* Don't assume anything about the header files. */
-#define NO_IMPLICIT_EXTERN_C
-
#undef PROFILE_HOOK
#define PROFILE_HOOK(LABEL) \
if (MAIN_NAME_P (DECL_NAME (current_function_decl))) \
diff --git a/gcc/config/i386/djgpp.h b/gcc/config/i386/djgpp.h
index 42130ed..01774ce 100644
--- a/gcc/config/i386/djgpp.h
+++ b/gcc/config/i386/djgpp.h
@@ -23,9 +23,6 @@ along with GCC; see the file COPYING3. If not see
#undef PREFERRED_DEBUGGING_TYPE
#define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG
-/* Don't assume anything about the header files. */
-#define NO_IMPLICIT_EXTERN_C
-
#undef BSS_SECTION_ASM_OP
#define BSS_SECTION_ASM_OP "\t.section\t.bss"
diff --git a/gcc/config/i386/nto.h b/gcc/config/i386/nto.h
index 339b0d1..fbcc668 100644
--- a/gcc/config/i386/nto.h
+++ b/gcc/config/i386/nto.h
@@ -98,8 +98,6 @@ crti.o%s \
#undef WCHAR_TYPE_SIZE
#define WCHAR_TYPE_SIZE BITS_PER_WORD
-#define NO_IMPLICIT_EXTERN_C 1
-
#define TARGET_POSIX_IO
#undef DBX_REGISTER_NUMBER
diff --git a/gcc/config/ia64/hpux.h b/gcc/config/ia64/hpux.h
index 5c5cf7f..d50c6ab 100644
--- a/gcc/config/ia64/hpux.h
+++ b/gcc/config/ia64/hpux.h
@@ -185,9 +185,6 @@ do { \
#define FLOAT_LIB_COMPARE_RETURNS_BOOL(MODE, COMPARISON) ((MODE) == TFmode)
-/* HP-UX headers are C++-compatible. */
-#define NO_IMPLICIT_EXTERN_C
-
/* HP-UX uses PROFILE_HOOK instead of FUNCTION_PROFILER but we need a
FUNCTION_PROFILER defined because its use is not ifdefed. When using
PROFILE_HOOK, the profile call comes after the prologue. */
diff --git a/gcc/config/lm32/lm32.h b/gcc/config/lm32/lm32.h
index c1b69fa..2a4a275 100644
--- a/gcc/config/lm32/lm32.h
+++ b/gcc/config/lm32/lm32.h
@@ -516,8 +516,4 @@ do { \
#define FUNCTION_MODE SImode
-#ifndef NO_IMPLICIT_EXTERN_C
-#define NO_IMPLICIT_EXTERN_C
-#endif
-
#define STORE_FLAG_VALUE 1
diff --git a/gcc/config/lm32/uclinux-elf.h b/gcc/config/lm32/uclinux-elf.h
index f6413c4..cfaca37 100644
--- a/gcc/config/lm32/uclinux-elf.h
+++ b/gcc/config/lm32/uclinux-elf.h
@@ -21,10 +21,6 @@
/* elfos.h should have already been included. Now just override
any conflicting definitions and add any extras. */
-/* Do not assume anything about header files. */
-#undef NO_IMPLICIT_EXTERN_C
-#define NO_IMPLICIT_EXTERN_C
-
/* The GNU C++ standard library requires that these macros be defined. */
#undef CPLUSPLUS_CPP_SPEC
#define CPLUSPLUS_CPP_SPEC "-D_GNU_SOURCE %(cpp)"
diff --git a/gcc/config/lynx.h b/gcc/config/lynx.h
index 50c6d07..e2f768b 100644
--- a/gcc/config/lynx.h
+++ b/gcc/config/lynx.h
@@ -165,12 +165,6 @@ along with GCC; see the file COPYING3. If not see
# define PREFERRED_DEBUGGING_TYPE DBX_DEBUG
#endif
-/* We have C++ support in our system headers. */
-
-#ifndef NO_IMPLICIT_EXTERN_C
-# define NO_IMPLICIT_EXTERN_C
-#endif
-
#ifndef TARGET_POSIX_IO
# define TARGET_POSIX_IO
#endif
diff --git a/gcc/config/mips/elf.h b/gcc/config/mips/elf.h
index dab96a6..98d4f80 100644
--- a/gcc/config/mips/elf.h
+++ b/gcc/config/mips/elf.h
@@ -46,5 +46,3 @@ along with GCC; see the file COPYING3. If not see
#undef ENDFILE_SPEC
#define ENDFILE_SPEC "crtend%O%s crtn%O%s"
-
-#define NO_IMPLICIT_EXTERN_C 1
diff --git a/gcc/config/mmix/mmix.h b/gcc/config/mmix/mmix.h
index aa998c2..7b46afc 100644
--- a/gcc/config/mmix/mmix.h
+++ b/gcc/config/mmix/mmix.h
@@ -789,8 +789,6 @@ typedef struct { int regs; int lib; } CUMULATIVE_ARGS;
#define FUNCTION_MODE QImode
-#define NO_IMPLICIT_EXTERN_C
-
/* mmix-knuth-mmixware target has no support of C99 runtime */
#undef TARGET_LIBC_HAS_FUNCTION
#define TARGET_LIBC_HAS_FUNCTION no_c99_libc_has_function
diff --git a/gcc/config/netbsd.h b/gcc/config/netbsd.h
index 8f9d5d3..dfd7c30 100644
--- a/gcc/config/netbsd.h
+++ b/gcc/config/netbsd.h
@@ -149,10 +149,6 @@ along with GCC; see the file COPYING3. If not see
#undef TARGET_POSIX_IO
#define TARGET_POSIX_IO
-/* Don't assume anything about the header files. */
-#undef NO_IMPLICIT_EXTERN_C
-#define NO_IMPLICIT_EXTERN_C 1
-
/* Define some types that are the same on all NetBSD platforms,
making them agree with <machine/ansi.h>. */
diff --git a/gcc/config/pa/pa-hpux.h b/gcc/config/pa/pa-hpux.h
index 19a632b..496cfb8 100644
--- a/gcc/config/pa/pa-hpux.h
+++ b/gcc/config/pa/pa-hpux.h
@@ -102,10 +102,6 @@ along with GCC; see the file COPYING3. If not see
"%{mlinker-opt:-O} %{!shared:-u main} %{static:-a archive} %{g*:-a archive} %{shared:-b}"
#endif
-/* hpux8 and later have C++ compatible include files, so do not
- pretend they are `extern "C"'. */
-#define NO_IMPLICIT_EXTERN_C
-
/* hpux11 and earlier don't have fputc_unlocked, so we must inhibit the
transformation of fputs_unlocked and fprintf_unlocked to fputc_unlocked. */
#define DONT_HAVE_FPUTC_UNLOCKED
diff --git a/gcc/config/powerpcspe/sysv4.h b/gcc/config/powerpcspe/sysv4.h
index 4f35274..756e9e5 100644
--- a/gcc/config/powerpcspe/sysv4.h
+++ b/gcc/config/powerpcspe/sysv4.h
@@ -23,10 +23,6 @@
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
<http://www.gnu.org/licenses/>. */
-/* Header files should be C++ aware in general. */
-#undef NO_IMPLICIT_EXTERN_C
-#define NO_IMPLICIT_EXTERN_C
-
/* Yes! We are ELF. */
#define TARGET_OBJECT_FORMAT OBJECT_ELF
diff --git a/gcc/config/riscv/elf.h b/gcc/config/riscv/elf.h
index a8357bb..0a4686a 100644
--- a/gcc/config/riscv/elf.h
+++ b/gcc/config/riscv/elf.h
@@ -32,5 +32,3 @@ along with GCC; see the file COPYING3. If not see
#undef ENDFILE_SPEC
#define ENDFILE_SPEC "crtend%O%s"
-
-#define NO_IMPLICIT_EXTERN_C 1
diff --git a/gcc/config/rs6000/aix.h b/gcc/config/rs6000/aix.h
index 0a93163..2d585d8 100644
--- a/gcc/config/rs6000/aix.h
+++ b/gcc/config/rs6000/aix.h
@@ -23,6 +23,9 @@
#undef TARGET_AIX
#define TARGET_AIX 1
+/* System headers are not C++-aware. */
+#define SYSTEM_IMPLICIT_EXTERN_C 1
+
/* Linux64.h wants to redefine TARGET_AIX based on -m64, but it can't be used
in the #if conditional in options-default.h, so provide another macro. */
#undef TARGET_AIX_OS
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
index 6b709fb..0c67634 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
@@ -23,10 +23,6 @@
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
<http://www.gnu.org/licenses/>. */
-/* Header files should be C++ aware in general. */
-#undef NO_IMPLICIT_EXTERN_C
-#define NO_IMPLICIT_EXTERN_C
-
/* Yes! We are ELF. */
#define TARGET_OBJECT_FORMAT OBJECT_ELF
diff --git a/gcc/config/rtems.h b/gcc/config/rtems.h
index af58eb1..9879d52 100644
--- a/gcc/config/rtems.h
+++ b/gcc/config/rtems.h
@@ -22,10 +22,6 @@
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
<http://www.gnu.org/licenses/>. */
-/* The system headers under RTEMS are C++-aware. */
-#undef NO_IMPLICIT_EXTERN_C
-#define NO_IMPLICIT_EXTERN_C
-
/*
* Dummy start/end specification to let linker work as
* needed by autoconf scripts using this compiler.
diff --git a/gcc/config/s390/tpf.h b/gcc/config/s390/tpf.h
index 96802c6..5871a6b 100644
--- a/gcc/config/s390/tpf.h
+++ b/gcc/config/s390/tpf.h
@@ -30,7 +30,6 @@ along with GCC; see the file COPYING3. If not see
#define ASM_APP_ON "#APP\n"
#undef ASM_APP_OFF
#define ASM_APP_OFF "#NO_APP\n"
-#define NO_IMPLICIT_EXTERN_C
#define TARGET_POSIX_IO
#undef SIZE_TYPE
diff --git a/gcc/config/sh/newlib.h b/gcc/config/sh/newlib.h
index 4d3ff02..9884856 100644
--- a/gcc/config/sh/newlib.h
+++ b/gcc/config/sh/newlib.h
@@ -23,7 +23,3 @@ along with GCC; see the file COPYING3. If not see
#undef LIB_SPEC
#define LIB_SPEC "-lc -lgloss"
-
-#undef NO_IMPLICIT_EXTERN_C
-#define NO_IMPLICIT_EXTERN_C 1
-
diff --git a/gcc/config/sol2.h b/gcc/config/sol2.h
index bc4f63d..8b67e78 100644
--- a/gcc/config/sol2.h
+++ b/gcc/config/sol2.h
@@ -423,9 +423,6 @@ along with GCC; see the file COPYING3. If not see
produce the same format. */
#define NM_FLAGS "-png"
-/* The system headers under Solaris 2 are C++-aware since 2.0. */
-#define NO_IMPLICIT_EXTERN_C
-
#define STDC_0_IN_SYSTEM_HEADERS 1
/* Support Solaris-specific format checking for cmn_err. */
diff --git a/gcc/config/sparc/openbsd64.h b/gcc/config/sparc/openbsd64.h
index 653eee9..55880f8 100644
--- a/gcc/config/sparc/openbsd64.h
+++ b/gcc/config/sparc/openbsd64.h
@@ -41,9 +41,6 @@ along with GCC; see the file COPYING3. If not see
} \
while (0)
-/* Inherited from sp64-elf. */
-#undef NO_IMPLICIT_EXTERN_C
-
#undef ASM_SPEC
#define ASM_SPEC "\
-s %{" FPIE_OR_FPIC_SPEC ":-K PIC} \
diff --git a/gcc/config/sparc/sp-elf.h b/gcc/config/sparc/sp-elf.h
index 0ee607c..0c53332 100644
--- a/gcc/config/sparc/sp-elf.h
+++ b/gcc/config/sparc/sp-elf.h
@@ -18,9 +18,6 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
-/* Don't assume anything about the header files. */
-#define NO_IMPLICIT_EXTERN_C
-
/* It's safe to pass -s always, even if -g is not used. */
#undef ASM_SPEC
#define ASM_SPEC \
diff --git a/gcc/config/sparc/sp64-elf.h b/gcc/config/sparc/sp64-elf.h
index 5414b2d..3af2af0 100644
--- a/gcc/config/sparc/sp64-elf.h
+++ b/gcc/config/sparc/sp64-elf.h
@@ -27,9 +27,6 @@ along with GCC; see the file COPYING3. If not see
#undef SPARC_DEFAULT_CMODEL
#define SPARC_DEFAULT_CMODEL CM_EMBMEDANY
-/* Don't assume anything about the header files. */
-#define NO_IMPLICIT_EXTERN_C
-
#undef ASM_SPEC
#define ASM_SPEC "\
-s %{" FPIE_OR_FPIC_SPEC ":-K PIC} \
diff --git a/gcc/config/spu/spu.h b/gcc/config/spu/spu.h
index e846f1c..af73958 100644
--- a/gcc/config/spu/spu.h
+++ b/gcc/config/spu/spu.h
@@ -483,8 +483,6 @@ do { \
#define FUNCTION_MODE QImode
-#define NO_IMPLICIT_EXTERN_C 1
-
/* Address spaces. */
#define ADDR_SPACE_EA 1
diff --git a/gcc/config/stormy16/stormy16.h b/gcc/config/stormy16/stormy16.h
index 4667d8d..8adc6be 100644
--- a/gcc/config/stormy16/stormy16.h
+++ b/gcc/config/stormy16/stormy16.h
@@ -476,5 +476,3 @@ enum reg_class
#define Pmode HImode
#define FUNCTION_MODE HImode
-
-#define NO_IMPLICIT_EXTERN_C
diff --git a/gcc/config/v850/v850.h b/gcc/config/v850/v850.h
index 04d226a..d3391a6 100644
--- a/gcc/config/v850/v850.h
+++ b/gcc/config/v850/v850.h
@@ -834,12 +834,6 @@ extern const char * GHS_current_section_names [(int) COUNT_OF_GHS_SECTION_KINDS]
#define TARGET_ASM_INIT_SECTIONS v850_asm_init_sections
-/* Define this so that the cc1plus will not think that system header files
- need an implicit 'extern "C" { ... }' assumed. This breaks testing C++
- in a build directory where the libstdc++ header files are found via a
- -isystem <path-to-build-dir>. */
-#define NO_IMPLICIT_EXTERN_C
-
#define ADJUST_INSN_LENGTH(INSN, LENGTH) \
((LENGTH) = v850_adjust_insn_length ((INSN), (LENGTH)))
diff --git a/gcc/config/visium/visium.h b/gcc/config/visium/visium.h
index dac9a45..f1bd00f 100644
--- a/gcc/config/visium/visium.h
+++ b/gcc/config/visium/visium.h
@@ -1211,14 +1211,6 @@ do \
machines this should be `QImode'. */
#define FUNCTION_MODE SImode
-/* `NO_IMPLICIT_EXTERN_C'
-
- Define this macro if the system header files support C++ as well as
- C. This macro inhibits the usual method of using system header
- files in C++, which is to pretend that the file's contents are
- enclosed in `extern "C" {...}'. */
-#define NO_IMPLICIT_EXTERN_C
-
/* Dividing the Output into Sections (Texts, Data, ...)
An object file is divided into sections containing different types
diff --git a/gcc/config/vx-common.h b/gcc/config/vx-common.h
index f5c398e..d83cbfb 100644
--- a/gcc/config/vx-common.h
+++ b/gcc/config/vx-common.h
@@ -18,10 +18,6 @@ You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
-/* VxWorks headers are C++-aware. */
-#undef NO_IMPLICIT_EXTERN_C
-#define NO_IMPLICIT_EXTERN_C
-
/* Most of these will probably be overridden by subsequent headers. We
undefine them here just in case, and define VXWORKS_ versions of each,
to be used in port-specific vxworks.h. */
diff --git a/gcc/config/xtensa/elf.h b/gcc/config/xtensa/elf.h
index a95d7b3..736fd2d 100644
--- a/gcc/config/xtensa/elf.h
+++ b/gcc/config/xtensa/elf.h
@@ -20,9 +20,6 @@ along with GCC; see the file COPYING3. If not see
#define TARGET_SECTION_TYPE_FLAGS xtensa_multibss_section_type_flags
-/* Don't assume anything about the header files. */
-#define NO_IMPLICIT_EXTERN_C
-
#undef ASM_APP_ON
#define ASM_APP_ON "#APP\n"