ada: Fix small oversight in removal of N_Unchecked_Expression node

In addition to Resolve_Indexed_Component, Eval_Indexed_Component can also
set the Do_Range_Check flag on the expressions of an N_Indexed_Component
node through the call on Check_Non_Static_Context, so this also needs to
be blocked by the Kill_Range_Check flag.

gcc/ada/ChangeLog:

	* sem_eval.adb (Eval_Indexed_Component): Clear Do_Range_Check on
	the expressions if Kill_Range_Check is set on the node.
This commit is contained in:
Eric Botcazou 2024-11-08 15:35:27 +01:00 committed by Marc Poulhiès
parent b4fd15d8be
commit 70faad1961

View File

@ -2629,6 +2629,9 @@ package body Sem_Eval is
Expr := First (Expressions (N));
while Present (Expr) loop
Check_Non_Static_Context (Expr);
if Kill_Range_Check (N) then
Set_Do_Range_Check (Expr, False);
end if;
Next (Expr);
end loop;