2010-07-27 Paolo Carlini <paolo.carlini@oracle.com>
[official-gcc/alias-decl.git] / gcc / ada / a-tgdico.ads
blobd1150fd5991a52d0f2182fb34874909f1a8548aa
1 ------------------------------------------------------------------------------
2 -- --
3 -- GNAT COMPILER COMPONENTS --
4 -- --
5 -- ADA.TAGS.GENERIC_DISPATCHING_CONSTRUCTOR --
6 -- --
7 -- S p e c --
8 -- --
9 -- This specification is derived from the Ada Reference Manual for use with --
10 -- GNAT. In accordance with the copyright of that document, you can freely --
11 -- copy and modify this specification, provided that if you redistribute a --
12 -- modified version, any changes that you have made are clearly indicated. --
13 -- --
14 ------------------------------------------------------------------------------
16 pragma Warnings (Off);
17 -- Turn of categorization warnings
19 generic
20 type T (<>) is abstract tagged limited private;
21 type Parameters (<>) is limited private;
22 with function Constructor (Params : not null access Parameters) return T
23 is abstract;
25 function Ada.Tags.Generic_Dispatching_Constructor
26 (The_Tag : Tag;
27 Params : not null access Parameters) return T'Class;
28 pragma Preelaborate_05 (Generic_Dispatching_Constructor);
29 pragma Import (Intrinsic, Generic_Dispatching_Constructor);
30 -- Note: the reason that we use Preelaborate_05 here is so that this will
31 -- compile fine during the normal build procedures. In Ada 2005 mode (which
32 -- is required for this package anyway), this will be treated as Preelaborate
33 -- so everything will be fine.