https://gcc.gnu.org/g:4d72cfaadf3946b46b7472066f3c2f937d0f52f3
commit r15-4667-g4d72cfaadf3946b46b7472066f3c2f937d0f52f3 Author: Eric Botcazou <ebotca...@adacore.com> Date: Fri Oct 25 13:14:22 2024 +0200 Add regression test gcc/testsuite PR ada/116551 * gnat.dg/specs/vfa3.ads: New test. Diff: --- gcc/testsuite/gnat.dg/specs/vfa3.ads | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gcc/testsuite/gnat.dg/specs/vfa3.ads b/gcc/testsuite/gnat.dg/specs/vfa3.ads new file mode 100644 index 000000000000..200e294e140f --- /dev/null +++ b/gcc/testsuite/gnat.dg/specs/vfa3.ads @@ -0,0 +1,25 @@ +-- { dg-do compile } + +package VFA3 is + + type Bit is mod 2**1 + with Size => 1; + + type Intr_Level_Field is record + Level_Low : Bit := 0; + Level_High : Bit := 0; + Edge_Low : Bit := 0; + Edge_High : Bit := 0; + end record with Pack, Size => 4; + for Intr_Level_Field use record + Level_Low at 0 range 0 .. 0; + Level_High at 0 range 1 .. 1; + Edge_Low at 0 range 2 .. 2; + Edge_High at 0 range 3 .. 3; + end record; + + type Intr_Level_Cluster is array (0 .. 7) of Intr_Level_Field + with Volatile_Full_Access, Pack, Object_Size => 32; + -- There are 8 Fields in a 32-bit word. + +end VFA3;