A local use of pragma Warnings Off to suppress specific messages, when
not followed by a matching pragma Warnings On, extends until the end of
the file.
Tested on x86_64-pc-linux-gnu, committed on trunk
2018-05-23 Yannick Moy <m...@adacore.com>
gcc/ada/
* doc/gnat_rm/implementation_defined_pragmas.rst: Clarify meaning of
local pragma Warnings Off without On.
* gnat_rm.texi: Regenerate.
--- gcc/ada/doc/gnat_rm/implementation_defined_pragmas.rst
+++ gcc/ada/doc/gnat_rm/implementation_defined_pragmas.rst
@@ -7456,6 +7456,10 @@ In this usage, the pattern string must match in the Off and On
pragmas, and (if *-gnatw.w* is given) at least one matching
warning must be suppressed.
+Note: if the ON form is not found, then the effect of the OFF form extends
+until the end of the file (pragma Warnings is purely textual, so its effect
+does not stop at the end of the enclosing scope).
+
Note: to write a string that will match any warning, use the string
``"***"``. It will not work to use a single asterisk or two
asterisks since this looks like an operator name. This form with three
--- gcc/ada/gnat_rm.texi
+++ gcc/ada/gnat_rm.texi
@@ -8893,6 +8893,10 @@ In this usage, the pattern string must match in the Off and On
pragmas, and (if @emph{-gnatw.w} is given) at least one matching
warning must be suppressed.
+Note: if the ON form is not found, then the effect of the OFF form extends
+until the end of the file (pragma Warnings is purely textual, so its effect
+does not stop at the end of the enclosing scope).
+
Note: to write a string that will match any warning, use the string
@code{"***"}. It will not work to use a single asterisk or two
asterisks since this looks like an operator name. This form with three