Commit 56f2741b by Martin Sebor Committed by Martin Sebor

* doc/invoke.texi (Warning Options): Document -Winvalid-memory-model.

From-SVN: r232070
parent 9676aceb
2016-01-04 Martin Sebor <msebor@redhat.com>
* doc/invoke.texi (Warning Options): Document -Winvalid-memory-model.
2016-01-04 Michael Meissner <meissner@linux.vnet.ibm.com> 2016-01-04 Michael Meissner <meissner@linux.vnet.ibm.com>
* config/rs6000/rs6000-cpus.def (ISA_3_0_MASKS_SERVER): Add * config/rs6000/rs6000-cpus.def (ISA_3_0_MASKS_SERVER): Add
......
...@@ -260,7 +260,7 @@ Objective-C and Objective-C++ Dialects}. ...@@ -260,7 +260,7 @@ Objective-C and Objective-C++ Dialects}.
-Wignored-qualifiers -Wincompatible-pointer-types @gol -Wignored-qualifiers -Wincompatible-pointer-types @gol
-Wimplicit -Wimplicit-function-declaration -Wimplicit-int @gol -Wimplicit -Wimplicit-function-declaration -Wimplicit-int @gol
-Winit-self -Winline -Wno-int-conversion @gol -Winit-self -Winline -Wno-int-conversion @gol
-Wno-int-to-pointer-cast -Wno-invalid-offsetof @gol -Wno-int-to-pointer-cast -Winvalid-memory-model -Wno-invalid-offsetof @gol
-Winvalid-pch -Wlarger-than=@var{len} @gol -Winvalid-pch -Wlarger-than=@var{len} @gol
-Wlogical-op -Wlogical-not-parentheses -Wlong-long @gol -Wlogical-op -Wlogical-not-parentheses -Wlong-long @gol
-Wmain -Wmaybe-uninitialized -Wmemset-transposed-args @gol -Wmain -Wmaybe-uninitialized -Wmemset-transposed-args @gol
...@@ -4305,6 +4305,26 @@ to compute a value that itself is never used, because such ...@@ -4305,6 +4305,26 @@ to compute a value that itself is never used, because such
computations may be deleted by data flow analysis before the warnings computations may be deleted by data flow analysis before the warnings
are printed. are printed.
@item -Winvalid-memory-model
@opindex Winvalid-memory-model
@opindex Wno-invalid-memory-model
Warn for invocations of @ref{__atomic Builtins}, @ref{__sync Builtins},
and the C11 atomic generic functions with a memory consistency argument
that is either invalid for the operation or outside the range of values
of the @code{memory_order} enumeration. For example, since the
@code{__atomic_store} and @code{__atomic_store_n} built-ins are only
defined for the relaxed, release, and sequentially consistent memory
orders the following code is diagnosed:
@smallexample
void store (int *i)
@{
__atomic_store_n (i, 0, memory_order_consume);
@}
@end smallexample
@option{-Winvalid-memory-model} is enabled by default.
@item -Wmaybe-uninitialized @item -Wmaybe-uninitialized
@opindex Wmaybe-uninitialized @opindex Wmaybe-uninitialized
@opindex Wno-maybe-uninitialized @opindex Wno-maybe-uninitialized
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment