[Ada] Fix recent optimization in evaluation of selected component for GNATprove
authorArnaud Charlet <charlet@adacore.com>
Thu, 10 Dec 2020 16:22:23 +0000 (11:22 -0500)
committerPierre-Marie de Rodat <derodat@adacore.com>
Wed, 28 Apr 2021 09:38:18 +0000 (05:38 -0400)
gcc/ada/

* sem_eval.adb (Eval_Selected_Component): Only consider compile
time known aggregates.

gcc/ada/sem_eval.adb

index 7b1e48d..3ccf3a0 100644 (file)
@@ -3849,7 +3849,9 @@ package body Sem_Eval is
 
          Node := Unqualify (Prefix (N));
 
-         if Nkind (Node) = N_Aggregate then
+         if Nkind (Node) = N_Aggregate
+           and then Compile_Time_Known_Aggregate (Node)
+         then
             Comp := First (Component_Associations (Node));
             Nam  := Chars (Selector_Name (N));