about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--conform/conformtest.pl7
2 files changed, 8 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index cc86a62cad..adc2e18b69 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2012-05-01  Joseph Myers  <joseph@codesourcery.com>
 
+	* conform/conformtest.pl (@keywords): Only include C99 keywords
+	for standards based on C99 or C11.
+
 	* conform/data/iso646.h-data [ISO || POSIX || XPG3 || XPG4]:
 	Disable tests.
 	* conform/data/stdint.h-data [ISO || POSIX || XPG3 || XPG4 ||
diff --git a/conform/conformtest.pl b/conform/conformtest.pl
index 4704debc5e..018057f000 100644
--- a/conform/conformtest.pl
+++ b/conform/conformtest.pl
@@ -64,12 +64,15 @@ die "unknown standard \"$standard\"" if ($CFLAGS{$standard} eq "");
 #   $mustprepend{'wordexp.h'} = "#include <stddef.h>\n";
 # }
 
-# These are the ISO C99 keywords.
+# These are the ISO C90 keywords.
 @keywords = ('auto', 'break', 'case', 'char', 'const', 'continue', 'default',
 	     'do', 'double', 'else', 'enum', 'extern', 'float', 'for', 'goto',
-	     'if', 'inline', 'int', 'long', 'register', 'restrict', 'return',
+	     'if', 'int', 'long', 'register', 'return',
 	     'short', 'signed', 'sizeof', 'static', 'struct', 'switch',
 	     'typedef', 'union', 'unsigned', 'void', 'volatile', 'while');
+if ($CFLAGS{$standard} =~ /-std=(c99|c1x)/) {
+  push (@keywords, 'inline', 'restrict');
+}
 
 # Make a hash table from this information.
 while ($#keywords >= 0) {