sem_prag.adb: Minor reformatting.

2011-11-04  Robert Dewar  <dewar@adacore.com>

	* sem_prag.adb: Minor reformatting.
	* gnat_rm.texi: Update documentation for pragma Warnings (Off,
	"***") usage.
	* exp_ch2.adb (Expand_Entity_Reference): Only set
	Atomic_Sync_Required on entities that are variables. Doesn't
	make any sense on anything else.

From-SVN: r180939
This commit is contained in:
Robert Dewar 2011-11-04 11:00:33 +00:00 committed by Arnaud Charlet
parent fb5d63c68a
commit 8751a35c53
4 changed files with 20 additions and 3 deletions

View File

@ -1,3 +1,12 @@
2011-11-04 Robert Dewar <dewar@adacore.com>
* sem_prag.adb: Minor reformatting.
* gnat_rm.texi: Update documentation for pragma Warnings (Off,
"***") usage.
* exp_ch2.adb (Expand_Entity_Reference): Only set
Atomic_Sync_Required on entities that are variables. Doesn't
make any sense on anything else.
2011-11-04 Robert Dewar <dewar@adacore.com>
* exp_ch2.adb (Expand_Entity_Reference): Extend handling of

View File

@ -402,6 +402,7 @@ package body Exp_Ch2 is
-- Set Atomic_Sync_Required if necessary for atomic variable
if Nkind_In (N, N_Identifier, N_Expanded_Name)
and then Ekind (E) = E_Variable
and then (Is_Atomic (E) or else Is_Atomic (Etype (E)))
then
declare

View File

@ -5575,7 +5575,7 @@ as possibly modified by compiler switches. Then each pragma Warning
modifies this set of warnings as specified. This form of the pragma may
also be used as a configuration pragma.
The fourth form, with an On|Off parameter and a string, is used to
The fourth form, with an @code{On|Off} parameter and a string, is used to
control individual messages, based on their text. The string argument
is a pattern that is used to match against the text of individual
warning messages (not including the initial "warning: " tag).
@ -5587,7 +5587,7 @@ message @code{warning: 960 bits of "a" unused}. No other regular
expression notations are permitted. All characters other than asterisk in
these three specific cases are treated as literal characters in the match.
There are two ways to use this pragma. The OFF form can be used as a
There are two ways to use the pragma in this form. The OFF form can be used as a
configuration pragma. The effect is to suppress all warnings (if any)
that match the pattern string throughout the compilation.
@ -5604,6 +5604,13 @@ pragma Warnings (On, Pattern);
In this usage, the pattern string must match in the Off and On pragmas,
and at least one matching warning must be suppressed.
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 asterisks
is similar in effect to specifying @code{pragma Warnings (Off)} except that a
matching @code{pragma Warnings (On, "***")} will be required. This can be
helpful in avoiding forgetting to turn warnings back on.
Note: the debug flag -gnatd.i (@code{/NOWARNINGS_PRAGMAS} in VMS) can be
used to cause the compiler to entirely ignore all WARNINGS pragmas. This can
be useful in checking whether obsolete pragmas in existing programs are hiding

View File

@ -14395,7 +14395,7 @@ package body Sem_Prag is
-- actual is a conversion. Retrieve the real entity name.
if (In_Instance_Body
or else In_Inlined_Body)
or else In_Inlined_Body)
and then Nkind (E_Id) = N_Unchecked_Type_Conversion
then
E_Id := Expression (E_Id);