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------------------------------------------------------------------------------
15
16pragma Warnings (Off);
17--  Turn of categorization warnings
18
19generic
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;
24
25function Ada.Tags.Generic_Dispatching_Constructor
26  (The_Tag : Tag;
27   Params  : not null access Parameters) return T'Class;
28pragma Preelaborate_05 (Generic_Dispatching_Constructor);
29pragma 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.
34