]> git.ipfire.org Git - thirdparty/gcc.git/commit
[Ada] Bad Default_Initial_Condition check for a not-default-initialized object
authorSteve Baird <baird@adacore.com>
Tue, 26 Jul 2022 00:19:29 +0000 (17:19 -0700)
committerMarc Poulhiès <poulhies@adacore.com>
Mon, 5 Sep 2022 07:21:05 +0000 (09:21 +0200)
commit2237f94d32c1116d221b2818c04d1db4508665af
tree614e35b9bf5b2ee535786e3d380700718aaf997f
parent645d1208bf948aed1d6030ca2e9d1510e7459a95
[Ada] Bad Default_Initial_Condition check for a not-default-initialized object

No Default_Initial_Condition check should be generated for an object
declaration that has an explicit initial value. Previously this was
implemented by testing the Has_Init_Expression flag, but this only works
if the object declaration was created by the parser (since only the
parser sets that attribute, at least currently).

gcc/ada/

* exp_ch3.adb
(Expand_N_Object_Declaration): In deciding whether to emit a DIC
check, we were previously testing the Has_Init_Expression flag.
Continue to test that flag as before, but add a test for the
syntactic presence of an initial value in the object declaration.
This new test would not supersede the old test in the case where
an explicit initial value has been eliminated as part of some tree
transformation.
gcc/ada/exp_ch3.adb