blob: dc92a9182dc1115479ece1bbe44e47957de5146f [file] [log] [blame]
-- { dg-do compile }
-- { dg-options "-gnata" }
procedure Predicate11 is
type T_BYTES is new Integer range 0 .. 2**15 - 1 with Size => 32;
subtype TYPE5_SCALAR is T_BYTES
with Dynamic_Predicate => TYPE5_SCALAR mod 4 = 0;
subtype Cond is Integer
with dynamic_predicate => (if cond < 5 then false else True);
Thing1 : Type5_Scalar := 7; -- { dg-warning "check will fail at run time" }
function OK (C :Type5_scalar) return Boolean is (True);
Thing2 : Type5_Scalar;
Thing3 : Cond;
begin
if not OK (7) then raise Program_Error; end if; -- { dg-warning "check will fail at run time" }
Thing2 := 8;
Thing3 := 1; -- { dg-warning "check will fail at run time" }
end;