]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - gdb/testsuite/gdb.ada/uninitialized_vars/parse_controlled.ads
c62f8781a613a1b827662b06948df87effffac4f
[thirdparty/binutils-gdb.git] / gdb / testsuite / gdb.ada / uninitialized_vars / parse_controlled.ads
1 -- Copyright 2009-2016 Free Software Foundation, Inc.
2 --
3 -- This program is free software; you can redistribute it and/or modify
4 -- it under the terms of the GNU General Public License as published by
5 -- the Free Software Foundation; either version 3 of the License, or
6 -- (at your option) any later version.
7 --
8 -- This program is distributed in the hope that it will be useful,
9 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
10 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 -- GNU General Public License for more details.
12 --
13 -- You should have received a copy of the GNU General Public License
14 -- along with this program. If not, see <http://www.gnu.org/licenses/>.
15
16 with Ada.Finalization;
17
18 package Parse_Controlled is
19
20 type Variant_Kind is (VK_Null, VK_Num, VK_String);
21 type Null_Variant_Record (Kind : Variant_Kind := VK_Null) is record
22 case Kind is
23 when VK_Null =>
24 null;
25 when VK_Num =>
26 Num_Value : Long_Float;
27 when VK_String =>
28 String_Value : Natural;
29 end case;
30 end record;
31 type Null_Variant is new Ada.Finalization.Controlled with record
32 V : Null_Variant_Record;
33 end record;
34
35 end Parse_Controlled;