aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gnat.dg/unc.adb
blob: c75dfbe66e6f4b7fda2fc0e1c15429a89ec49758 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
-- { dg-do compile }

with Ada.Streams.Stream_IO; use Ada.Streams.Stream_IO;
procedure Unc is
   type Arr is array (1..4) of integer;
   type Bytes is array (positive range <>) of Character;
   type Buffer (D : Boolean := False) is record
      case D is 
        when False =>
           Chars: Bytes (1..16);
        when True =>
           Values : Arr;
      end case;
   end record;
--
   pragma Unchecked_Union (Buffer);
   pragma Warnings (Off);
   Val : Buffer;
--      
   F : File_Type;
   S : Stream_Access;
begin
   Create (F, Out_File);
   S := Stream (F);
   Buffer'Output (S, Val);
end;