blob: fb1c98caeffdf0f7d5d472d1b84dee96bbb20d21 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
-- { dg-do run }
-- { dg-skip-if "divide does not trap" { aarch64*-*-* powerpc*-*-* riscv*-*-* } }
-- This test requires architecture- and OS-specific support code for unwinding
-- through signal frames (typically located in *-unwind.h) to pass. Feel free
-- to disable it if this code hasn't been implemented yet.
procedure Div_Zero is
pragma Suppress (All_Checks);
function Zero return Integer is
begin
return 0;
end;
D : Integer := Zero;
begin
D := 1 / D;
raise Program_Error;
exception
when Constraint_Error => null;
end;
|