aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gnat.dg/discr32_pkg.ads
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gnat.dg/discr32_pkg.ads')
-rw-r--r--gcc/testsuite/gnat.dg/discr32_pkg.ads24
1 files changed, 24 insertions, 0 deletions
diff --git a/gcc/testsuite/gnat.dg/discr32_pkg.ads b/gcc/testsuite/gnat.dg/discr32_pkg.ads
new file mode 100644
index 00000000000..f1761e4b5e5
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/discr32_pkg.ads
@@ -0,0 +1,24 @@
+package Discr32_Pkg is
+
+ type Enum is (One, Two, Three);
+
+ type R (D : Enum) is record
+ case D is
+ when One => B : Boolean;
+ when Two => I : Integer;
+ when Three => F : Float;
+ end case;
+ end record;
+
+ for R use record
+ D at 0 range 0 .. 1;
+ B at 1 range 0 .. 0;
+ I at 4 range 0 .. 31 + 128;
+-- F at 4 range 0 .. 31;
+ end record;
+
+ subtype R1 is R (One);
+ subtype R2 is R (Two);
+ subtype R3 is R (Three);
+
+end Discr32_Pkg;