summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gnat.dg/discr8.adb
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gnat.dg/discr8.adb')
-rw-r--r--gcc/testsuite/gnat.dg/discr8.adb38
1 files changed, 38 insertions, 0 deletions
diff --git a/gcc/testsuite/gnat.dg/discr8.adb b/gcc/testsuite/gnat.dg/discr8.adb
new file mode 100644
index 000000000..cfb3d48e9
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/discr8.adb
@@ -0,0 +1,38 @@
+-- { dg-do compile }
+-- { dg-options "-gnatws" }
+
+package body Discr8 is
+
+ procedure Make (C : out Local_T) is
+ Tmp : Local_T (Tag_One);
+ begin
+ C := Tmp;
+ end;
+
+ package Iteration is
+
+ type Message_T is
+ record
+ S : Local_T;
+ end record;
+
+ type Iterator_T is
+ record
+ S : Local_T;
+ end record;
+
+ type Access_Iterator_T is access Iterator_T;
+
+ end Iteration;
+
+ package body Iteration is
+
+ procedure Construct (Iterator : in out Access_Iterator_T;
+ Message : Message_T) is
+ begin
+ Iterator.S := Message.S;
+ end;
+
+ end Iteration;
+
+end Discr8;