aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@google.com>2009-06-10 02:01:06 +0000
committerIan Lance Taylor <ian@gcc.gnu.org>2009-06-10 02:01:06 +0000
commitbf4066870d1a42226e711c1e941f14733f648f6d (patch)
treedb7cab5db121bc9f4ea32f384356de3085b43d24 /gcc
parent780ca5bf715142256f55d6bda4a282c9a3529d33 (diff)
downloadgcc-bf4066870d1a42226e711c1e941f14733f648f6d.zip
gcc-bf4066870d1a42226e711c1e941f14733f648f6d.tar.gz
gcc-bf4066870d1a42226e711c1e941f14733f648f6d.tar.bz2
system.h (HAVE_DESIGNATED_INITIALIZERS): Don't define if compiling with C++.
* system.h (HAVE_DESIGNATED_INITIALIZERS): Don't define if compiling with C++. * optabs.c (optab_table): Only use designated initializers if HAVE_DESIGNATED_INITIALIZERS is defined. (convert_optab_table): Likewise. (init_optabs): Always call init_insn_codes if HAVE_DESIGNATED_INITIALIZERS is not defined. From-SVN: r148336
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog10
-rw-r--r--gcc/optabs.c6
-rw-r--r--gcc/system.h3
3 files changed, 15 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 878d18e..cb6507a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,15 @@
2009-06-09 Ian Lance Taylor <iant@google.com>
+ * system.h (HAVE_DESIGNATED_INITIALIZERS): Don't define if
+ compiling with C++.
+ * optabs.c (optab_table): Only use designated initializers if
+ HAVE_DESIGNATED_INITIALIZERS is defined.
+ (convert_optab_table): Likewise.
+ (init_optabs): Always call init_insn_codes if
+ HAVE_DESIGNATED_INITIALIZERS is not defined.
+
+2009-06-09 Ian Lance Taylor <iant@google.com>
+
* targhooks.c (default_builtin_vectorized_function): Change fn
parameter to unsigned int.
(default_builtin_vectorized_conversion): Change code parameter to
diff --git a/gcc/optabs.c b/gcc/optabs.c
index 2b9da2cdb..257edd9e 100644
--- a/gcc/optabs.c
+++ b/gcc/optabs.c
@@ -54,7 +54,7 @@ along with GCC; see the file COPYING3. If not see
See expr.h for documentation of these optabs. */
-#if GCC_VERSION >= 4000
+#if GCC_VERSION >= 4000 && HAVE_DESIGNATED_INITIALIZERS
__extension__ struct optab_d optab_table[OTI_MAX]
= { [0 ... OTI_MAX - 1].handlers[0 ... NUM_MACHINE_MODES - 1].insn_code
= CODE_FOR_nothing };
@@ -66,7 +66,7 @@ struct optab_d optab_table[OTI_MAX];
rtx libfunc_table[LTI_MAX];
/* Tables of patterns for converting one mode to another. */
-#if GCC_VERSION >= 4000
+#if GCC_VERSION >= 4000 && HAVE_DESIGNATED_INITIALIZERS
__extension__ struct convert_optab_d convert_optab_table[COI_MAX]
= { [0 ... COI_MAX - 1].handlers[0 ... NUM_MACHINE_MODES - 1]
[0 ... NUM_MACHINE_MODES - 1].insn_code
@@ -6153,7 +6153,7 @@ init_optabs (void)
vcondu_gen_code[i] = CODE_FOR_nothing;
}
-#if GCC_VERSION >= 4000
+#if GCC_VERSION >= 4000 && HAVE_DESIGNATED_INITIALIZERS
/* We statically initialize the insn_codes with CODE_FOR_nothing. */
if (reinit)
init_insn_codes ();
diff --git a/gcc/system.h b/gcc/system.h
index 2a111ee..51d9c99 100644
--- a/gcc/system.h
+++ b/gcc/system.h
@@ -452,7 +452,8 @@ extern int vsnprintf(char *, size_t, const char *, va_list);
/* 1 if we have C99 designated initializers. */
#if !defined(HAVE_DESIGNATED_INITIALIZERS)
#define HAVE_DESIGNATED_INITIALIZERS \
- ((GCC_VERSION >= 2007) || (__STDC_VERSION__ >= 199901L))
+ (((GCC_VERSION >= 2007) || (__STDC_VERSION__ >= 199901L)) \
+ && !defined(__cplusplus))
#endif
#if HAVE_SYS_STAT_H