diff options
Diffstat (limited to 'gcc/testsuite/gnat.dg/varsize_copy.adb')
-rw-r--r-- | gcc/testsuite/gnat.dg/varsize_copy.adb | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/gcc/testsuite/gnat.dg/varsize_copy.adb b/gcc/testsuite/gnat.dg/varsize_copy.adb new file mode 100644 index 000000000..4fa0ff862 --- /dev/null +++ b/gcc/testsuite/gnat.dg/varsize_copy.adb @@ -0,0 +1,24 @@ +-- { dg-do compile } +-- { dg-options "-O -gnatws" } + +package body Varsize_Copy is + + type Key_Mapping_Type is record + Page : Page_Type; + B : Boolean; + end record; + + type Key_Mapping_Array is array (Key_Type) of Key_Mapping_Type; + + type Set is record + Key_Mappings : Key_Mapping_Array; + end record; + + S : Set; + + function F (Key : Key_Type) return Page_Type is + begin + return S.Key_Mappings (Key).Page; + end; + +end Varsize_Copy; |