2004-10-05 Joseph S. Myers <jsm@polyomino.org.uk>
+ * c-decl.c (declspecs_add_type): Don't pedwarn for _Complex in
+ system headers.
+
+2004-10-05 Joseph S. Myers <jsm@polyomino.org.uk>
+
* c-decl.c (pushdecl): When an extern declaration at block scope
refers to a visible entity with internal linkage, use the old DECL
rather than the new one.
break;
case RID_COMPLEX:
dupe = specs->complex_p;
- if (pedantic && !flag_isoc99)
+ if (pedantic && !flag_isoc99 && !in_system_header)
pedwarn ("ISO C90 does not support complex types");
if (specs->typespec_word == cts_void)
error ("both %<complex%> and %<void%> in "
2004-10-05 Joseph S. Myers <jsm@polyomino.org.uk>
+ * gcc.dg/complex-2.c, gcc.dg/complex-2.h: New test.
+
+2004-10-05 Joseph S. Myers <jsm@polyomino.org.uk>
+
* gcc.c-torture/compile/20041005-1.c: New test.
2004-10-05 Nathan Sidwell <nathan@codesourcery.com>
--- /dev/null
+/* Allow complex types in system headers even with -std=iso9899:1990
+ -pedantic-errors. */
+/* Origin: Joseph Myers <jsm@polyomino.org.uk> */
+/* { dg-do compile } */
+/* { dg-options "-std=iso9899:1990 -pedantic-errors" } */
+
+#include "complex-2.h"
--- /dev/null
+/* Allow complex types in system headers even with -std=iso9899:1990
+ -pedantic-errors. Header file. */
+
+#pragma GCC system_header
+
+_Complex double x;