]> git.ipfire.org Git - thirdparty/gcc.git/commit
[Ada] Restore defensive guard in checks for volatile actuals
authorPiotr Trojanek <trojanek@adacore.com>
Wed, 30 Mar 2022 10:00:20 +0000 (12:00 +0200)
committerPierre-Marie de Rodat <derodat@adacore.com>
Tue, 17 May 2022 08:25:50 +0000 (08:25 +0000)
commit33400df641d834ca3fd3f2c964ed92759f128ffa
tree14e5905daaa447e42c06a1a8ee38a566b3544ff7
parentde0665fc7f195e12ede10abb6a98b10011e70807
[Ada] Restore defensive guard in checks for volatile actuals

When flagging names of volatile objects occurring in actual parameters
it is safer to guard against identifiers without entity. This is
redundant (because earlier in the resolution of actual parameters we
already guard against actuals with Any_Type), but perhaps such
identifiers will become allowed in constructs like:

   Subprogram_Call
     (Actual =>
        (declare
           X : Boolean := ...
             with Annotate (GNATprove, ...)));
                            ^^^^^^^^^

which include an identifier that does not denote any entity.

Code cleanup related to handling of volatile components; behaviour is
unaffected.

gcc/ada/

* sem_res.adb (Flag_Effectively_Volatile_Objects): Restore
redundant guard.
gcc/ada/sem_res.adb