| -- { 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; |