aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc
diff options
context:
space:
mode:
authorMarek Polacek <polacek@redhat.com>2014-08-19 06:04:38 +0000
committerMarek Polacek <mpolacek@gcc.gnu.org>2014-08-19 06:04:38 +0000
commit35aff4fb82ce0f615dc5e0ad73341a1fe77cbd12 (patch)
tree252dbb8b85e09aa8d379abb28ffc5e483fa4edb2 /gcc/doc
parentfdec323d35ab9bf489e374c0545621bc90dd08c0 (diff)
downloadgcc-35aff4fb82ce0f615dc5e0ad73341a1fe77cbd12.zip
gcc-35aff4fb82ce0f615dc5e0ad73341a1fe77cbd12.tar.gz
gcc-35aff4fb82ce0f615dc5e0ad73341a1fe77cbd12.tar.bz2
invoke.texi: Document -Wc99-c11-compat.
* doc/invoke.texi: Document -Wc99-c11-compat. c-family/ * c.opt (Wc99-c11-compat): New option. c/ * c-decl.c (diagnose_mismatched_decls): Unconditionally call pedwarn_c99 instead of pedwarn. (grokfield): Likewise. (warn_defaults_to): New function. (grokdeclarator): Call warn_defaults_to instead of pedwarn_c99. Unconditionally call pedwarn_c99 instead of pedwarn. (start_function): Call warn_defaults_to instead of pedwarn_c99. (declspecs_add_scspec): Call pedwarn_c99 instead of pedwarn, don't check flag_isoc11 before. * c-errors.c (pedwarn_c99): Change the return type to bool. Handle -Wc99-c11-compat. * c-parser.c (disable_extension_diagnostics): Handle warn_c99_c11_compat. (restore_extension_diagnostics): Likewise. (c_parser_static_assert_declaration_no_semi): Call pedwarn_c99 instead of pedwarn, don't check flag_isoc11 before. (c_parser_declspecs): Likewise. (c_parser_alignas_specifier): Likewise. (c_parser_alignof_expression): Likewise. (c_parser_generic_selection): Likewise. * c-tree.h (pedwarn_c99): Update declaration. * c-typeck.c (c_finish_return): Call pedwarn or warning_at instead of pedwarn_c99. testsuite/ * gcc.dg/Wc99-c11-compat-1.c: New test. * gcc.dg/Wc99-c11-compat-2.c: New test. * gcc.dg/Wc99-c11-compat-3.c: New test. * gcc.dg/Wc99-c11-compat-4.c: New test. * gcc.dg/Wc99-c11-compat-5.c: New test. * gcc.dg/Wc99-c11-compat-6.c: New test. * gcc.dg/Wc99-c11-compat-7.c: New test. From-SVN: r214133
Diffstat (limited to 'gcc/doc')
-rw-r--r--gcc/doc/invoke.texi12
1 files changed, 11 insertions, 1 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 6374261..8ea3689 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -241,7 +241,7 @@ Objective-C and Objective-C++ Dialects}.
-w -Wextra -Wall -Waddress -Waggregate-return @gol
-Waggressive-loop-optimizations -Warray-bounds @gol
-Wno-attributes -Wno-builtin-macro-redefined @gol
--Wc90-c99-compat @gol
+-Wc90-c99-compat -Wc99-c11-compat @gol
-Wc++-compat -Wc++11-compat -Wcast-align -Wcast-qual @gol
-Wchar-subscripts -Wclobbered -Wcomment -Wconditionally-supported @gol
-Wconversion -Wcoverage-mismatch -Wdate-time -Wdelete-incomplete -Wno-cpp @gol
@@ -4527,6 +4527,16 @@ type, @code{bool} type, compound literals, designated initializers, and so
on. This option is independent of the standards mode. Warnings are disabled
in the expression that follows @code{__extension__}.
+@item -Wc99-c11-compat @r{(C and Objective-C only)}
+@opindex Wc99-c11-compat
+@opindex Wno-c99-c11-compat
+Warn about features not present in ISO C99, but present in ISO C11.
+For instance, warn about use of anonymous structures and unions,
+@code{_Atomic} type qualifier, @code{_Thread_local} storage-class specifier,
+@code{_Alignas} specifier, @code{Alignof} operator, @code{_Generic} keyword,
+and so on. This option is independent of the standards mode. Warnings are
+disabled in the expression that follows @code{__extension__}.
+
@item -Wc++-compat @r{(C and Objective-C only)}
Warn about ISO C constructs that are outside of the common subset of
ISO C and ISO C++, e.g.@: request for implicit conversion from