--- { dg-do compile }\r
-\r
-package Unchecked_Union2 is\r
-\r
- type Small_Int is range 0 .. 2**19 - 1;\r
-\r
- type R1 (B : Boolean := True) is record\r
- case B is\r
- when True => Data1 : Small_Int;\r
- when False => Data2 : Small_Int;\r
- end case;\r
- end record;\r
-\r
- for R1 use record\r
- Data1 at 0 range 0 .. 18;\r
- Data2 at 0 range 0 .. 18;\r
- end record;\r
- for R1'Size use 24;\r
-\r
- pragma Unchecked_Union (R1);\r
-\r
- type R2 is record\r
- Data : R1;\r
- end record;\r
-\r
- for R2 use record\r
- Data at 0 range 3 .. 26;\r
- end record;\r
-\r
-end Unchecked_Union2;\r
+-- { dg-do compile }
+
+package Unchecked_Union2 is
+
+ type Small_Int is range 0 .. 2**19 - 1;
+
+ type R1 (B : Boolean := True) is record
+ case B is
+ when True => Data1 : Small_Int;
+ when False => Data2 : Small_Int;
+ end case;
+ end record;
+
+ for R1 use record
+ Data1 at 0 range 0 .. 18;
+ Data2 at 0 range 0 .. 18;
+ end record;
+ for R1'Size use 24;
+
+ pragma Unchecked_Union (R1);
+
+ type R2 is record
+ Data : R1;
+ end record;
+
+ for R2 use record
+ Data at 0 range 3 .. 26;
+ end record;
+
+end Unchecked_Union2;