aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDavid Edelsohn <dje.gcc@gmail.com>2021-08-24 16:48:57 -0400
committerDavid Edelsohn <dje.gcc@gmail.com>2021-08-24 18:33:21 -0400
commit9cf3f026e281f5eb978a78055d8949a3295b7f10 (patch)
tree5c9286c484f9cd5773c38bcb55dfd9f31d701160 /gcc
parent81e1894456bc6214c0c42148ff2b1bed142a3545 (diff)
downloadgcc-9cf3f026e281f5eb978a78055d8949a3295b7f10.zip
gcc-9cf3f026e281f5eb978a78055d8949a3295b7f10.tar.gz
gcc-9cf3f026e281f5eb978a78055d8949a3295b7f10.tar.bz2
aix: SYSTEM_IMPLICIT_EXTERN_C
AIX 7.3 system headers are C++ safe and GCC no longer needs to define SYSTEM_IMPLICIT_EXTERN_C for AIX 7.3. This patch moves the definition from aix.h to the individual OS-level configuration files and does not define the macro for AIX 7.3. The patch also corrects the definition of TARGET_AIX_VERSION to 73. gcc/ChangeLog: * config/rs6000/aix.h (SYSTEM_IMPLICIT_EXTERN_C): Delete. * config/rs6000/aix71.h (SYSTEM_IMPLICIT_EXTERN_C): Define. * config/rs6000/aix72.h (SYSTEM_IMPLICIT_EXTERN_C): Define. * config/rs6000/aix73.h (TARGET_AIX_VERSION): Increase to 73.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/config/rs6000/aix.h4
-rw-r--r--gcc/config/rs6000/aix71.h4
-rw-r--r--gcc/config/rs6000/aix72.h3
-rw-r--r--gcc/config/rs6000/aix73.h2
4 files changed, 9 insertions, 4 deletions
diff --git a/gcc/config/rs6000/aix.h b/gcc/config/rs6000/aix.h
index 662785c..0f4d8cb 100644
--- a/gcc/config/rs6000/aix.h
+++ b/gcc/config/rs6000/aix.h
@@ -1,3 +1,4 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
/* Definitions of target machine for GNU compiler,
for IBM RS/6000 POWER running AIX.
Copyright (C) 2000-2021 Free Software Foundation, Inc.
@@ -23,9 +24,6 @@
#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/aix71.h b/gcc/config/rs6000/aix71.h
index 38cfa9e..1bc1560 100644
--- a/gcc/config/rs6000/aix71.h
+++ b/gcc/config/rs6000/aix71.h
@@ -1,3 +1,4 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
/* Definitions of target machine for GNU compiler,
for IBM RS/6000 POWER running AIX V7.1.
Copyright (C) 2002-2021 Free Software Foundation, Inc.
@@ -268,6 +269,9 @@ extern long long int atoll(const char *);
#define SET_CMODEL(opt) do {} while (0)
#endif
+/* System headers are not C++-aware. */
+#define SYSTEM_IMPLICIT_EXTERN_C 1
+
/* This target defines SUPPORTS_WEAK and TARGET_ASM_NAMED_SECTION,
but does not have crtbegin/end. */
diff --git a/gcc/config/rs6000/aix72.h b/gcc/config/rs6000/aix72.h
index a497a7d..cca64f1 100644
--- a/gcc/config/rs6000/aix72.h
+++ b/gcc/config/rs6000/aix72.h
@@ -270,6 +270,9 @@ extern long long int atoll(const char *);
#define SET_CMODEL(opt) do {} while (0)
#endif
+/* System headers are not C++-aware. */
+#define SYSTEM_IMPLICIT_EXTERN_C 1
+
/* This target defines SUPPORTS_WEAK and TARGET_ASM_NAMED_SECTION,
but does not have crtbegin/end. */
diff --git a/gcc/config/rs6000/aix73.h b/gcc/config/rs6000/aix73.h
index c707c7e..f0ca1a5 100644
--- a/gcc/config/rs6000/aix73.h
+++ b/gcc/config/rs6000/aix73.h
@@ -274,7 +274,7 @@ extern long long int atoll(const char *);
/* This target defines SUPPORTS_WEAK and TARGET_ASM_NAMED_SECTION,
but does not have crtbegin/end. */
-#define TARGET_AIX_VERSION 72
+#define TARGET_AIX_VERSION 73
/* AIX 7.2 supports DWARF3+ debugging. */
#define DWARF2_DEBUGGING_INFO 1