-- { dg-do run } procedure range_check is function ident (x : integer) return integer is begin return x; end ident; guard1 : Integer; r : array (1 .. ident (10)) of integer; pragma Suppress (Index_Check, r); guard2 : Integer; begin guard1 := 0; guard2 := 0; r (11) := 3; end;