1------------------------------------------------------------------------------
2--                                                                          --
3--                         GNAT COMPILER COMPONENTS                         --
4--                                                                          --
5--                              R T S F I N D                               --
6--                                                                          --
7--                                 S p e c                                  --
8--                                                                          --
9--          Copyright (C) 1992-2003, Free Software Foundation, Inc.         --
10--                                                                          --
11-- GNAT is free software;  you can  redistribute it  and/or modify it under --
12-- terms of the  GNU General Public License as published  by the Free Soft- --
13-- ware  Foundation;  either version 2,  or (at your option) any later ver- --
14-- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
15-- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
16-- or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License --
17-- for  more details.  You should have  received  a copy of the GNU General --
18-- Public License  distributed with GNAT;  see file COPYING.  If not, write --
19-- to  the Free Software Foundation,  59 Temple Place - Suite 330,  Boston, --
20-- MA 02111-1307, USA.                                                      --
21--                                                                          --
22-- GNAT was originally developed  by the GNAT team at  New York University. --
23-- Extensive contributions were provided by Ada Core Technologies Inc.      --
24--                                                                          --
25------------------------------------------------------------------------------
26
27with Types; use Types;
28
29package Rtsfind is
30
31--  This package contains the routine that is used to obtain runtime library
32--  entities, loading in the required runtime library packages on demand. It
33--  is also used for such purposes as finding System.Address when System has
34--  not been explicitly With'ed.
35
36   ------------------------
37   -- Runtime Unit Table --
38   ------------------------
39
40   --  The following type includes an enumeration entry for each runtime
41   --  unit. The enumeration literal represents the fully qualified
42   --  name of the unit, as follows:
43
44   --    Names of the form Ada_xxx are first level children of Ada, whose
45   --    name is Ada.xxx. For example, the name Ada_Tags refers to package
46   --    Ada.Tags.
47
48   --    Names of the form Ada_Calendar_xxx are second level children
49   --    of Ada.Calendar. This is part of a temporary implementation of
50   --    delays; eventually, packages implementing delays will be found
51   --    relative to the package that declares the time type.
52
53   --    Names of the form Ada_Finalization_xxx are second level children
54   --    of Ada.Finalization.
55
56   --    Names of the form Ada_Interrupts_xxx are second level children
57   --    of Ada.Interrupts. This is needed for Ada.Interrupts.Names which
58   --    is used by pragma Interrupt_State.
59
60   --    Names of the form Ada_Real_Time_xxx are second level children
61   --    of Ada.Real_Time.
62
63   --    Names of the form Ada_Streams_xxx are second level children
64   --    of Ada.Streams.
65
66   --    Names of the form Ada_Text_IO_xxx are second level children
67   --    of Ada.Text_IO.
68
69   --    Names of the form Ada_Wide_Text_IO_xxx are second level children
70   --    of Ada.Wide_Text_IO.
71
72   --    Names of the form Interfaces_xxx are first level children of
73   --    Interfaces_CPP refers to package Interfaces.CPP
74
75   --    Names of the form System_xxx are first level children of System, whose
76   --    name is System.xxx. For example, the name System_Str_Concat refers to
77   --    package System.Str_Concat.
78
79   --    Names of the form System_Tasking_xxx are second level children of the
80   --    package System.Tasking. For example, System_Tasking_Stages refers to
81   --    refers to the package System.Tasking.Stages.
82
83   --    Other names stand for themselves (e.g. System for package System)
84
85   --  This list can contain both subprogram and package unit names. For
86   --  packages, the accessible entities in the package are separately
87   --  listed in the package entity table. The units must be either library
88   --  level package declarations, or library level subprogram declarations.
89   --  Generic units, library level instantiations and subprogram bodies
90   --  acting as specs may not be referenced (all these cases could be added
91   --  at the expense of additional complexity in the body of Rtsfind, but
92   --  it doesn't seem worth while, since the implementation controls the
93   --  set of units that are referenced, and this restrictions is easily met.
94
95   --  IMPORTANT NOTE: the specs of packages and procedures with'ed using
96   --  this mechanism may not contain use clauses. This is because these
97   --  subprograms are compiled in the current visibility environment, and
98   --  it would be too much trouble to establish a clean environment for the
99   --  compilation. The presence of extraneous visible stuff has no effect
100   --  on the compilation except in the presence of use clauses (which might
101   --  result in unexpected ambiguities).
102
103   type RTU_Id is (
104      --  Runtime packages, for list of accessible entities in each
105      --  package see declarations in the runtime entity table below.
106
107      RTU_Null,
108      --  Used as a null entry. Will cause an error if referenced.
109
110      --  Children of Ada
111
112      Ada_Calendar,
113      Ada_Exceptions,
114      Ada_Finalization,
115      Ada_Interrupts,
116      Ada_Real_Time,
117      Ada_Streams,
118      Ada_Tags,
119      Ada_Task_Identification,
120
121      --  Children of Ada.Calendar
122
123      Ada_Calendar_Delays,
124
125      --  Children of Ada.Finalization
126
127      Ada_Finalization_List_Controller,
128
129      --  Children of Ada.Interrupts
130
131      Ada_Interrupts_Names,
132
133      --  Children of Ada.Real_Time
134
135      Ada_Real_Time_Delays,
136
137      --  Children of Ada.Streams
138
139      Ada_Streams_Stream_IO,
140
141      --  Children of Ada.Text_IO (for Text_IO_Kludge)
142
143      Ada_Text_IO_Decimal_IO,
144      Ada_Text_IO_Enumeration_IO,
145      Ada_Text_IO_Fixed_IO,
146      Ada_Text_IO_Float_IO,
147      Ada_Text_IO_Integer_IO,
148      Ada_Text_IO_Modular_IO,
149
150      --  Children of Ada.Wide_Text_IO (for Text_IO_Kludge)
151
152      Ada_Wide_Text_IO_Decimal_IO,
153      Ada_Wide_Text_IO_Enumeration_IO,
154      Ada_Wide_Text_IO_Fixed_IO,
155      Ada_Wide_Text_IO_Float_IO,
156      Ada_Wide_Text_IO_Integer_IO,
157      Ada_Wide_Text_IO_Modular_IO,
158
159      --  Interfaces
160
161      Interfaces,
162
163      --  Children of Interfaces
164
165      Interfaces_CPP,
166      Interfaces_Packed_Decimal,
167
168      --  Package System
169
170      System,
171
172      --  Children of System
173
174      System_Arith_64,
175      System_AST_Handling,
176      System_Assertions,
177      System_Aux_DEC,
178      System_Bit_Ops,
179      System_Boolean_Array_Operations,
180      System_Checked_Pools,
181      System_Compare_Array_Signed_16,
182      System_Compare_Array_Signed_32,
183      System_Compare_Array_Signed_64,
184      System_Compare_Array_Signed_8,
185      System_Compare_Array_Unsigned_16,
186      System_Compare_Array_Unsigned_32,
187      System_Compare_Array_Unsigned_64,
188      System_Compare_Array_Unsigned_8,
189      System_Exception_Table,
190      System_Exceptions,
191      System_Exn_Int,
192      System_Exn_LLF,
193      System_Exn_LLI,
194      System_Exp_Int,
195      System_Exp_LInt,
196      System_Exp_LLI,
197      System_Exp_LLU,
198      System_Exp_Mod,
199      System_Exp_Uns,
200      System_Fat_Flt,
201      System_Fat_LFlt,
202      System_Fat_LLF,
203      System_Fat_SFlt,
204      System_Finalization_Implementation,
205      System_Finalization_Root,
206      System_Fore,
207      System_Img_Bool,
208      System_Img_Char,
209      System_Img_Dec,
210      System_Img_Enum,
211      System_Img_Int,
212      System_Img_LLD,
213      System_Img_LLI,
214      System_Img_LLU,
215      System_Img_Name,
216      System_Img_Real,
217      System_Img_Uns,
218      System_Img_WChar,
219      System_Interrupts,
220      System_Machine_Code,
221      System_Mantissa,
222      System_Memcop,
223      System_Pack_03,
224      System_Pack_05,
225      System_Pack_06,
226      System_Pack_07,
227      System_Pack_09,
228      System_Pack_10,
229      System_Pack_11,
230      System_Pack_12,
231      System_Pack_13,
232      System_Pack_14,
233      System_Pack_15,
234      System_Pack_17,
235      System_Pack_18,
236      System_Pack_19,
237      System_Pack_20,
238      System_Pack_21,
239      System_Pack_22,
240      System_Pack_23,
241      System_Pack_24,
242      System_Pack_25,
243      System_Pack_26,
244      System_Pack_27,
245      System_Pack_28,
246      System_Pack_29,
247      System_Pack_30,
248      System_Pack_31,
249      System_Pack_33,
250      System_Pack_34,
251      System_Pack_35,
252      System_Pack_36,
253      System_Pack_37,
254      System_Pack_38,
255      System_Pack_39,
256      System_Pack_40,
257      System_Pack_41,
258      System_Pack_42,
259      System_Pack_43,
260      System_Pack_44,
261      System_Pack_45,
262      System_Pack_46,
263      System_Pack_47,
264      System_Pack_48,
265      System_Pack_49,
266      System_Pack_50,
267      System_Pack_51,
268      System_Pack_52,
269      System_Pack_53,
270      System_Pack_54,
271      System_Pack_55,
272      System_Pack_56,
273      System_Pack_57,
274      System_Pack_58,
275      System_Pack_59,
276      System_Pack_60,
277      System_Pack_61,
278      System_Pack_62,
279      System_Pack_63,
280      System_Parameters,
281      System_Partition_Interface,
282      System_Pool_Global,
283      System_Pool_Empty,
284      System_Pool_Local,
285      System_Pool_Size,
286      System_RPC,
287      System_Scalar_Values,
288      System_Secondary_Stack,
289      System_Shared_Storage,
290      System_Soft_Links,
291      System_Standard_Library,
292      System_Storage_Elements,
293      System_Storage_Pools,
294      System_Stream_Attributes,
295      System_String_Ops,
296      System_String_Ops_Concat_3,
297      System_String_Ops_Concat_4,
298      System_String_Ops_Concat_5,
299      System_Task_Info,
300      System_Tasking,
301      System_Threads,
302      System_Unsigned_Types,
303      System_Val_Bool,
304      System_Val_Char,
305      System_Val_Dec,
306      System_Val_Enum,
307      System_Val_Int,
308      System_Val_LLD,
309      System_Val_LLI,
310      System_Val_LLU,
311      System_Val_Name,
312      System_Val_Real,
313      System_Val_Uns,
314      System_Val_WChar,
315      System_Vax_Float_Operations,
316      System_Version_Control,
317      System_VMS_Exception_Table,
318      System_WCh_StW,
319      System_WCh_WtS,
320      System_Wid_Bool,
321      System_Wid_Char,
322      System_Wid_Enum,
323      System_Wid_LLI,
324      System_Wid_LLU,
325      System_Wid_Name,
326      System_Wid_WChar,
327      System_WWd_Char,
328      System_WWd_Enum,
329      System_WWd_Wchar,
330
331      --  Children of System.Tasking
332
333      System_Tasking_Async_Delays,
334      System_Tasking_Async_Delays_Enqueue_Calendar,
335      System_Tasking_Async_Delays_Enqueue_RT,
336      System_Tasking_Protected_Objects,
337      System_Tasking_Protected_Objects_Entries,
338      System_Tasking_Protected_Objects_Operations,
339      System_Tasking_Protected_Objects_Single_Entry,
340      System_Tasking_Restricted_Stages,
341      System_Tasking_Rendezvous,
342      System_Tasking_Stages);
343
344   subtype Ada_Child is RTU_Id
345     range Ada_Calendar .. Ada_Wide_Text_IO_Modular_IO;
346   --  Range of values for children or grand-children of Ada
347
348   subtype Ada_Calendar_Child is Ada_Child
349     range Ada_Calendar_Delays .. Ada_Calendar_Delays;
350   --  Range of values for children of Ada.Calendar
351
352   subtype Ada_Finalization_Child is Ada_Child range
353     Ada_Finalization_List_Controller .. Ada_Finalization_List_Controller;
354   --  Range of values for children of Ada.Finalization
355
356   subtype Ada_Interrupts_Child is Ada_Child range
357     Ada_Interrupts_Names .. Ada_Interrupts_Names;
358   --  Range of values for children of Ada.Interrupts
359
360   subtype Ada_Real_Time_Child is Ada_Child
361     range Ada_Real_Time_Delays .. Ada_Real_Time_Delays;
362   --  Range of values for children of Ada.Real_Time
363
364   subtype Ada_Streams_Child is Ada_Child
365     range Ada_Streams_Stream_IO .. Ada_Streams_Stream_IO;
366
367   subtype Ada_Text_IO_Child is Ada_Child
368     range Ada_Text_IO_Decimal_IO .. Ada_Text_IO_Modular_IO;
369   --  Range of values for children of Ada.Text_IO
370
371   subtype Ada_Wide_Text_IO_Child is Ada_Child
372     range Ada_Wide_Text_IO_Decimal_IO .. Ada_Wide_Text_IO_Modular_IO;
373   --  Range of values for children of Ada.Text_IO
374
375   subtype Interfaces_Child is RTU_Id
376     range Interfaces_CPP .. Interfaces_Packed_Decimal;
377   --  Range of values for children of Interfaces
378
379   subtype System_Child is RTU_Id
380     range System_Arith_64 .. System_Tasking_Stages;
381   --  Range of values for children or grandchildren of System
382
383   subtype System_Tasking_Child is System_Child
384     range System_Tasking_Async_Delays .. System_Tasking_Stages;
385   --  Range of values for children of System.Tasking
386
387   subtype System_Tasking_Protected_Objects_Child is System_Tasking_Child
388     range System_Tasking_Protected_Objects_Entries ..
389       System_Tasking_Protected_Objects_Single_Entry;
390   --  Range of values for children of System.Tasking.Protected_Objects
391
392   subtype System_Tasking_Restricted_Child is System_Tasking_Child
393     range System_Tasking_Restricted_Stages ..
394       System_Tasking_Restricted_Stages;
395   --  Range of values for children of System.Tasking.Restricted
396
397   subtype System_Tasking_Async_Delays_Child is System_Tasking_Child
398     range System_Tasking_Async_Delays_Enqueue_Calendar ..
399       System_Tasking_Async_Delays_Enqueue_RT;
400   --  Range of values for children of System.Tasking.Async_Delays
401
402   --------------------------
403   -- Runtime Entity Table --
404   --------------------------
405
406   --  This is the enumeration type used to define the argument passed to
407   --  the RTE function. The name must exactly match the name of the entity
408   --  involved, and in the case of a package entity, this name must uniquely
409   --  imply the package containing the entity.
410
411   --  As far as possible, we avoid duplicate names in runtime packages, so
412   --  that the name RE_nnn uniquely identifies the entity nnn. In some cases,
413   --  it is impossible to avoid such duplication because the names come from
414   --  RM defined packages. In such cases, the name is of the form RO_XX_nnn
415   --  where XX is two letters used to differentiate the multiple occurrences
416   --  of the name xx, and nnn is the entity name.
417
418   --  Note that not all entities in the units contained in the run-time unit
419   --  table are included in the following table, only those that actually
420   --  have to be referenced from generated code.
421
422   --  Note on RE_Null. This value is used as a null entry where an RE_Id
423   --  value is required syntactically, but no real entry is required or
424   --  needed. Use of this value will cause a fatal error in an RTE call.
425
426   type RE_Id is (
427
428     RE_Null,
429
430     RE_Exceptions_Available_In_HIE,     -- Ada.Exceptions
431     RE_Code_Loc,                        -- Ada.Exceptions
432     RE_Current_Target_Exception,        -- Ada.Exceptions (JGNAT use only)
433     RE_Exception_Id,                    -- Ada.Exceptions
434     RE_Exception_Information,           -- Ada.Exceptions
435     RE_Exception_Message,               -- Ada.Exceptions
436     RE_Exception_Name_Simple,           -- Ada.Exceptions
437     RE_Exception_Occurrence,            -- Ada.Exceptions
438     RE_Null_Id,                         -- Ada.Exceptions
439     RE_Null_Occurrence,                 -- Ada.Exceptions
440     RE_Poll,                            -- Ada.Exceptions
441     RE_Raise_Exception,                 -- Ada.Exceptions
442     RE_Raise_Exception_Always,          -- Ada.Exceptions
443     RE_Reraise_Occurrence,              -- Ada.Exceptions
444     RE_Reraise_Occurrence_Always,       -- Ada.Exceptions
445     RE_Reraise_Occurrence_No_Defer,     -- Ada.Exceptions
446     RE_Save_Occurrence,                 -- Ada.Exceptions
447
448     RE_Simple_List_Controller,          -- Ada.Finalization.List_Controller
449     RE_List_Controller,                 -- Ada.Finalization.List_Controller
450
451     RE_Interrupt_ID,                    -- Ada.Interrupts
452
453     RE_Names,                           -- Ada.Interupts.Names
454
455     RE_Root_Stream_Type,                -- Ada.Streams
456     RE_Stream_Element,                  -- Ada.Streams
457     RE_Stream_Element_Count,            -- Ada.Streams
458     RE_Stream_Element_Offset,           -- Ada.Streams
459     RE_Stream_Element_Array,            -- Ada.Streams
460
461     RE_Stream_Access,                   -- Ada.Streams.Stream_IO
462
463     RE_CW_Membership,                   -- Ada.Tags
464     RE_DT_Entry_Size,                   -- Ada.Tags
465     RE_DT_Prologue_Size,                -- Ada.Tags
466     RE_External_Tag,                    -- Ada.Tags
467     RE_Get_Expanded_Name,               -- Ada.Tags
468     RE_Get_External_Tag,                -- Ada.Tags
469     RE_Get_Prim_Op_Address,             -- Ada.Tags
470     RE_Get_RC_Offset,                   -- Ada.Tags
471     RE_Get_Remotely_Callable,           -- Ada.Tags
472     RE_Get_TSD,                         -- Ada.Tags
473     RE_Inherit_DT,                      -- Ada.Tags
474     RE_Inherit_TSD,                     -- Ada.Tags
475     RE_Internal_Tag,                    -- Ada.Tags
476     RE_Register_Tag,                    -- Ada.Tags
477     RE_Set_Expanded_Name,               -- Ada.Tags
478     RE_Set_External_Tag,                -- Ada.Tags
479     RE_Set_Prim_Op_Address,             -- Ada.Tags
480     RE_Set_RC_Offset,                   -- Ada.Tags
481     RE_Set_Remotely_Callable,           -- Ada.Tags
482     RE_Set_TSD,                         -- Ada.Tags
483     RE_Tag_Error,                       -- Ada.Tags
484     RE_TSD_Entry_Size,                  -- Ada.Tags
485     RE_TSD_Prologue_Size,               -- Ada.Tags
486     RE_Tag,                             -- Ada.Tags
487     RE_Address_Array,                   -- Ada.Tags
488
489     RE_Abort_Task,                      -- Ada.Task_Identification
490     RE_Current_Task,                    -- Ada.Task_Identification
491     RO_AT_Task_ID,                      -- Ada.Task_Identification
492
493     RO_CA_Time,                         -- Ada.Calendar
494
495     RO_CA_Delay_For,                    -- Ada.Calendar.Delays
496     RO_CA_Delay_Until,                  -- Ada.Calendar.Delays
497     RO_CA_To_Duration,                  -- Ada.Calendar.Delays
498
499     RO_RT_Time,                         -- Ada.Real_Time
500
501     RO_RT_Delay_Until,                  -- Ada.Real_Time.Delays
502     RO_RT_To_Duration,                  -- Ada.Real_Time.Delays
503
504     RE_Integer_64,                      -- Interfaces
505     RE_Unsigned_8,                      -- Interfaces
506     RE_Unsigned_16,                     -- Interfaces
507     RE_Unsigned_32,                     -- Interfaces
508     RE_Unsigned_64,                     -- Interfaces
509
510     RE_Vtable_Ptr,                      -- Interfaces.CPP
511     RE_Displaced_This,                  -- Interfaces.CPP
512     RE_CPP_CW_Membership,               -- Interfaces.CPP
513     RE_CPP_DT_Entry_Size,               -- Interfaces.CPP
514     RE_CPP_DT_Prologue_Size,            -- Interfaces.CPP
515     RE_CPP_Get_Expanded_Name,           -- Interfaces.CPP
516     RE_CPP_Get_External_Tag,            -- Interfaces.CPP
517     RE_CPP_Get_Prim_Op_Address,         -- Interfaces.CPP
518     RE_CPP_Get_RC_Offset,               -- Interfaces.CPP
519     RE_CPP_Get_Remotely_Callable,       -- Interfaces.CPP
520     RE_CPP_Get_TSD,                     -- Interfaces.CPP
521     RE_CPP_Inherit_DT,                  -- Interfaces.CPP
522     RE_CPP_Inherit_TSD,                 -- Interfaces.CPP
523     RE_CPP_Register_Tag,                -- Interfaces.CPP
524     RE_CPP_Set_Expanded_Name,           -- Interfaces.CPP
525     RE_CPP_Set_External_Tag,            -- Interfaces.CPP
526     RE_CPP_Set_Prim_Op_Address,         -- Interfaces.CPP
527     RE_CPP_Set_RC_Offset,               -- Interfaces.CPP
528     RE_CPP_Set_Remotely_Callable,       -- Interfaces.CPP
529     RE_CPP_Set_TSD,                     -- Interfaces.CPP
530     RE_CPP_TSD_Entry_Size,              -- Interfaces.CPP
531     RE_CPP_TSD_Prologue_Size,           -- Interfaces.CPP
532
533     RE_Packed_Size,                     -- Interfaces.Packed_Decimal
534     RE_Packed_To_Int32,                 -- Interfaces.Packed_Decimal
535     RE_Packed_To_Int64,                 -- Interfaces.Packed_Decimal
536     RE_Int32_To_Packed,                 -- Interfaces.Packed_Decimal
537     RE_Int64_To_Packed,                 -- Interfaces.Packed_Decimal
538
539     RE_Address,                         -- System
540     RE_Any_Priority,                    -- System
541     RE_Bit_Order,                       -- System
542     RE_Default_Priority,                -- System
543     RE_High_Order_First,                -- System
544     RE_Interrupt_Priority,              -- System
545     RE_Lib_Stop,                        -- System
546     RE_Low_Order_First,                 -- System
547     RE_Max_Interrupt_Priority,          -- System
548     RE_Max_Priority,                    -- System
549     RE_Null_Address,                    -- System
550     RE_Priority,                        -- System
551
552     RE_Add_With_Ovflo_Check,            -- System.Arith_64
553     RE_Double_Divide,                   -- System.Arith_64
554     RE_Multiply_With_Ovflo_Check,       -- System.Arith_64
555     RE_Scaled_Divide,                   -- System.Arith_64
556     RE_Subtract_With_Ovflo_Check,       -- System.Arith_64
557
558     RE_Create_AST_Handler,              -- System.AST_Handling
559
560     RE_Raise_Assert_Failure,            -- System.Assertions
561
562     RE_AST_Handler,                     -- System.Aux_DEC
563     RE_Import_Value,                    -- System.Aux_DEC
564     RE_No_AST_Handler,                  -- System.Aux_DEC
565     RE_Type_Class,                      -- System.Aux_DEC
566     RE_Type_Class_Enumeration,          -- System.Aux_DEC
567     RE_Type_Class_Integer,              -- System.Aux_DEC
568     RE_Type_Class_Fixed_Point,          -- System.Aux_DEC
569     RE_Type_Class_Floating_Point,       -- System.Aux_DEC
570     RE_Type_Class_Array,                -- System.Aux_DEC
571     RE_Type_Class_Record,               -- System.Aux_DEC
572     RE_Type_Class_Access,               -- System.Aux_DEC
573     RE_Type_Class_Task,                 -- System.Aux_DEC
574     RE_Type_Class_Address,              -- System.Aux_DEC
575
576     RE_Bit_And,                         -- System.Bit_Ops
577     RE_Bit_Eq,                          -- System.Bit_Ops
578     RE_Bit_Not,                         -- System.Bit_Ops
579     RE_Bit_Or,                          -- System.Bit_Ops
580     RE_Bit_Xor,                         -- System.Bit_Ops
581
582     RE_Boolean_Array,                   -- System_Boolean_Array_Operations,
583     RE_Vector_Not,                      -- System_Boolean_Array_Operations,
584     RE_Vector_And,                      -- System_Boolean_Array_Operations,
585     RE_Vector_Or,                       -- System_Boolean_Array_Operations,
586     RE_Vector_Nand,                     -- System_Boolean_Array_Operations,
587     RE_Vector_Nor,                      -- System_Boolean_Array_Operations,
588     RE_Vector_Nxor,                     -- System_Boolean_Array_Operations,
589     RE_Vector_Xor,                      -- System_Boolean_Array_Operations,
590
591     RE_Checked_Pool,                    -- System.Checked_Pools
592
593     RE_Compare_Array_S8,                -- System.Compare_Array_Signed_8
594     RE_Compare_Array_S8_Unaligned,      -- System.Compare_Array_Signed_8
595
596     RE_Compare_Array_S16,               -- System.Compare_Array_Signed_16
597
598     RE_Compare_Array_S32,               -- System.Compare_Array_Signed_16
599
600     RE_Compare_Array_S64,               -- System.Compare_Array_Signed_16
601
602     RE_Compare_Array_U8,                -- System.Compare_Array_Unsigned_8
603     RE_Compare_Array_U8_Unaligned,      -- System.Compare_Array_Unsigned_8
604
605     RE_Compare_Array_U16,               -- System.Compare_Array_Unsigned_16
606
607     RE_Compare_Array_U32,               -- System.Compare_Array_Unsigned_16
608
609     RE_Compare_Array_U64,               -- System.Compare_Array_Unsigned_16
610
611     RE_Register_Exception,              -- System.Exception_Table
612
613     RE_All_Others_Id,                   -- System.Exceptions
614     RE_Handler_Record,                  -- System.Exceptions
615     RE_Handler_Record_Ptr,              -- System.Exceptions
616     RE_Others_Id,                       -- System.Exceptions
617     RE_Subprogram_Descriptor,           -- System.Exceptions
618     RE_Subprogram_Descriptor_0,         -- System.Exceptions
619     RE_Subprogram_Descriptor_1,         -- System.Exceptions
620     RE_Subprogram_Descriptor_2,         -- System.Exceptions
621     RE_Subprogram_Descriptor_3,         -- System.Exceptions
622     RE_Subprogram_Descriptor_List,      -- System.Exceptions
623     RE_Subprogram_Descriptor_Ptr,       -- System.Exceptions
624     RE_Subprogram_Descriptors_Record,   -- System.Exceptions
625     RE_Subprogram_Descriptors_Ptr,      -- System.Exceptions
626
627     RE_Exn_Integer,                     -- System.Exn_Int
628
629     RE_Exn_Long_Long_Float,             -- System.Exn_LLF
630
631     RE_Exn_Long_Long_Integer,           -- System.Exn_LLI
632
633     RE_Exp_Integer,                     -- System.Exp_Int
634
635     RE_Exp_Long_Long_Integer,           -- System.Exp_LLI
636
637     RE_Exp_Long_Long_Unsigned,          -- System.Exp_LLU
638
639     RE_Exp_Modular,                     -- System.Exp_Mod
640
641     RE_Exp_Unsigned,                    -- System.Exp_Uns
642
643     RE_Fat_Float,                       -- System.Fat_Flt
644
645     RE_Fat_Long_Float,                  -- System.Fat_LFlt
646
647     RE_Fat_Long_Long_Float,             -- System.Fat_LLF
648
649     RE_Fat_Short_Float,                 -- System.Fat_SFlt
650
651     RE_Attach_To_Final_List,            -- System.Finalization_Implementation
652     RE_Finalize_List,                   -- System.Finalization_Implementation
653     RE_Finalize_One,                    -- System.Finalization_Implementation
654     RE_Global_Final_List,               -- System.Finalization_Implementation
655     RE_Record_Controller,               -- System.Finalization_Implementation
656     RE_Limited_Record_Controller,       -- System.Finalization_Implementation
657     RE_Deep_Tag_Initialize,             -- System.Finalization_Implementation
658     RE_Deep_Tag_Adjust,                 -- System.Finalization_Implementation
659     RE_Deep_Tag_Finalize,               -- System.Finalization_Implementation
660     RE_Deep_Tag_Attach,                 -- System.Finalization_Implementation
661     RE_Deep_Rec_Initialize,             -- System.Finalization_Implementation
662     RE_Deep_Rec_Adjust,                 -- System.Finalization_Implementation
663     RE_Deep_Rec_Finalize,               -- System.Finalization_Implementation
664
665     RE_Root_Controlled,                 -- System.Finalization_Root
666     RE_Finalizable,                     -- System.Finalization_Root
667     RE_Finalizable_Ptr,                 -- System.Finalization_Root
668
669     RE_Fore,                            -- System.Fore
670
671     RE_Image_Boolean,                   -- System.Img_Bool
672
673     RE_Image_Character,                 -- System.Img_Char
674
675     RE_Image_Decimal,                   -- System.Img_Dec
676
677     RE_Image_Enumeration_8,             -- System.Img_Enum
678     RE_Image_Enumeration_16,            -- System.Img_Enum
679     RE_Image_Enumeration_32,            -- System.Img_Enum
680
681     RE_Image_Integer,                   -- System.Img_Int
682
683     RE_Image_Long_Long_Decimal,         -- System.Img_LLD
684
685     RE_Image_Long_Long_Integer,         -- System.Img_LLI
686
687     RE_Image_Long_Long_Unsigned,        -- System.Img_LLU
688
689     RE_Image_Ordinary_Fixed_Point,      -- System.Img_Real
690     RE_Image_Floating_Point,            -- System.Img_Real
691
692     RE_Image_Unsigned,                  -- System.Img_Uns
693
694     RE_Image_Wide_Character,            -- System.Img_WChar
695
696     RE_Bind_Interrupt_To_Entry,         -- System.Interrupts
697     RE_Default_Interrupt_Priority,      -- System.Interrupts
698     RE_Dynamic_Interrupt_Protection,    -- System.Interrupts
699     RE_Install_Handlers,                -- System.Interrupts
700     RE_Register_Interrupt_Handler,      -- System.Interrupts
701     RE_Static_Interrupt_Protection,     -- System.Interrupts
702     RE_System_Interrupt_Id,             -- System.Interrupts
703
704     RE_Asm_Insn,                        -- System.Machine_Code
705     RE_Asm_Input_Operand,               -- System.Machine_Code
706     RE_Asm_Output_Operand,              -- System.Machine_Code
707
708     RE_Mantissa_Value,                  -- System_Mantissa
709
710     RE_memcpy,                          -- System_Memcop
711     RE_memmove,                         -- System_Memcop
712
713     RE_Bits_03,                         -- System.Pack_03
714     RE_Get_03,                          -- System.Pack_03
715     RE_Set_03,                          -- System.Pack_03
716
717     RE_Bits_05,                         -- System.Pack_05
718     RE_Get_05,                          -- System.Pack_05
719     RE_Set_05,                          -- System.Pack_05
720
721     RE_Bits_06,                         -- System.Pack_06
722     RE_Get_06,                          -- System.Pack_06
723     RE_GetU_06,                         -- System.Pack_06
724     RE_Set_06,                          -- System.Pack_06
725     RE_SetU_06,                         -- System.Pack_06
726
727     RE_Bits_07,                         -- System.Pack_07
728     RE_Get_07,                          -- System.Pack_07
729     RE_Set_07,                          -- System.Pack_07
730
731     RE_Bits_09,                         -- System.Pack_09
732     RE_Get_09,                          -- System.Pack_09
733     RE_Set_09,                          -- System.Pack_09
734
735     RE_Bits_10,                         -- System.Pack_10
736     RE_Get_10,                          -- System.Pack_10
737     RE_GetU_10,                         -- System.Pack_10
738     RE_Set_10,                          -- System.Pack_10
739     RE_SetU_10,                         -- System.Pack_10
740
741     RE_Bits_11,                         -- System.Pack_11
742     RE_Get_11,                          -- System.Pack_11
743     RE_Set_11,                          -- System.Pack_11
744
745     RE_Bits_12,                         -- System.Pack_12
746     RE_Get_12,                          -- System.Pack_12
747     RE_GetU_12,                         -- System.Pack_12
748     RE_Set_12,                          -- System.Pack_12
749     RE_SetU_12,                         -- System.Pack_12
750
751     RE_Bits_13,                         -- System.Pack_13
752     RE_Get_13,                          -- System.Pack_13
753     RE_Set_13,                          -- System.Pack_13
754
755     RE_Bits_14,                         -- System.Pack_14
756     RE_Get_14,                          -- System.Pack_14
757     RE_GetU_14,                         -- System.Pack_14
758     RE_Set_14,                          -- System.Pack_14
759     RE_SetU_14,                         -- System.Pack_14
760
761     RE_Bits_15,                         -- System.Pack_15
762     RE_Get_15,                          -- System.Pack_15
763     RE_Set_15,                          -- System.Pack_15
764
765     RE_Bits_17,                         -- System.Pack_17
766     RE_Get_17,                          -- System.Pack_17
767     RE_Set_17,                          -- System.Pack_17
768
769     RE_Bits_18,                         -- System.Pack_18
770     RE_Get_18,                          -- System.Pack_18
771     RE_GetU_18,                         -- System.Pack_18
772     RE_Set_18,                          -- System.Pack_18
773     RE_SetU_18,                         -- System.Pack_18
774
775     RE_Bits_19,                         -- System.Pack_19
776     RE_Get_19,                          -- System.Pack_19
777     RE_Set_19,                          -- System.Pack_19
778
779     RE_Bits_20,                         -- System.Pack_20
780     RE_Get_20,                          -- System.Pack_20
781     RE_GetU_20,                         -- System.Pack_20
782     RE_Set_20,                          -- System.Pack_20
783     RE_SetU_20,                         -- System.Pack_20
784
785     RE_Bits_21,                         -- System.Pack_21
786     RE_Get_21,                          -- System.Pack_21
787     RE_Set_21,                          -- System.Pack_21
788
789     RE_Bits_22,                         -- System.Pack_22
790     RE_Get_22,                          -- System.Pack_22
791     RE_GetU_22,                         -- System.Pack_22
792     RE_Set_22,                          -- System.Pack_22
793     RE_SetU_22,                         -- System.Pack_22
794
795     RE_Bits_23,                         -- System.Pack_23
796     RE_Get_23,                          -- System.Pack_23
797     RE_Set_23,                          -- System.Pack_23
798
799     RE_Bits_24,                         -- System.Pack_24
800     RE_Get_24,                          -- System.Pack_24
801     RE_GetU_24,                         -- System.Pack_24
802     RE_Set_24,                          -- System.Pack_24
803     RE_SetU_24,                         -- System.Pack_24
804
805     RE_Bits_25,                         -- System.Pack_25
806     RE_Get_25,                          -- System.Pack_25
807     RE_Set_25,                          -- System.Pack_25
808
809     RE_Bits_26,                         -- System.Pack_26
810     RE_Get_26,                          -- System.Pack_26
811     RE_GetU_26,                         -- System.Pack_26
812     RE_Set_26,                          -- System.Pack_26
813     RE_SetU_26,                         -- System.Pack_26
814
815     RE_Bits_27,                         -- System.Pack_27
816     RE_Get_27,                          -- System.Pack_27
817     RE_Set_27,                          -- System.Pack_27
818
819     RE_Bits_28,                         -- System.Pack_28
820     RE_Get_28,                          -- System.Pack_28
821     RE_GetU_28,                         -- System.Pack_28
822     RE_Set_28,                          -- System.Pack_28
823     RE_SetU_28,                         -- System.Pack_28
824
825     RE_Bits_29,                         -- System.Pack_29
826     RE_Get_29,                          -- System.Pack_29
827     RE_Set_29,                          -- System.Pack_29
828
829     RE_Bits_30,                         -- System.Pack_30
830     RE_Get_30,                          -- System.Pack_30
831     RE_GetU_30,                         -- System.Pack_30
832     RE_Set_30,                          -- System.Pack_30
833     RE_SetU_30,                         -- System.Pack_30
834
835     RE_Bits_31,                         -- System.Pack_31
836     RE_Get_31,                          -- System.Pack_31
837     RE_Set_31,                          -- System.Pack_31
838
839     RE_Bits_33,                         -- System.Pack_33
840     RE_Get_33,                          -- System.Pack_33
841     RE_Set_33,                          -- System.Pack_33
842
843     RE_Bits_34,                         -- System.Pack_34
844     RE_Get_34,                          -- System.Pack_34
845     RE_GetU_34,                         -- System.Pack_34
846     RE_Set_34,                          -- System.Pack_34
847     RE_SetU_34,                         -- System.Pack_34
848
849     RE_Bits_35,                         -- System.Pack_35
850     RE_Get_35,                          -- System.Pack_35
851     RE_Set_35,                          -- System.Pack_35
852
853     RE_Bits_36,                         -- System.Pack_36
854     RE_Get_36,                          -- System.Pack_36
855     RE_GetU_36,                         -- System.Pack_36
856     RE_Set_36,                          -- System.Pack_36
857     RE_SetU_36,                         -- System.Pack_36
858
859     RE_Bits_37,                         -- System.Pack_37
860     RE_Get_37,                          -- System.Pack_37
861     RE_Set_37,                          -- System.Pack_37
862
863     RE_Bits_38,                         -- System.Pack_38
864     RE_Get_38,                          -- System.Pack_38
865     RE_GetU_38,                         -- System.Pack_38
866     RE_Set_38,                          -- System.Pack_38
867     RE_SetU_38,                         -- System.Pack_38
868
869     RE_Bits_39,                         -- System.Pack_39
870     RE_Get_39,                          -- System.Pack_39
871     RE_Set_39,                          -- System.Pack_39
872
873     RE_Bits_40,                         -- System.Pack_40
874     RE_Get_40,                          -- System.Pack_40
875     RE_GetU_40,                         -- System.Pack_40
876     RE_Set_40,                          -- System.Pack_40
877     RE_SetU_40,                         -- System.Pack_40
878
879     RE_Bits_41,                         -- System.Pack_41
880     RE_Get_41,                          -- System.Pack_41
881     RE_Set_41,                          -- System.Pack_41
882
883     RE_Bits_42,                         -- System.Pack_42
884     RE_Get_42,                          -- System.Pack_42
885     RE_GetU_42,                         -- System.Pack_42
886     RE_Set_42,                          -- System.Pack_42
887     RE_SetU_42,                         -- System.Pack_42
888
889     RE_Bits_43,                         -- System.Pack_43
890     RE_Get_43,                          -- System.Pack_43
891     RE_Set_43,                          -- System.Pack_43
892
893     RE_Bits_44,                         -- System.Pack_44
894     RE_Get_44,                          -- System.Pack_44
895     RE_GetU_44,                         -- System.Pack_44
896     RE_Set_44,                          -- System.Pack_44
897     RE_SetU_44,                         -- System.Pack_44
898
899     RE_Bits_45,                         -- System.Pack_45
900     RE_Get_45,                          -- System.Pack_45
901     RE_Set_45,                          -- System.Pack_45
902
903     RE_Bits_46,                         -- System.Pack_46
904     RE_Get_46,                          -- System.Pack_46
905     RE_GetU_46,                         -- System.Pack_46
906     RE_Set_46,                          -- System.Pack_46
907     RE_SetU_46,                         -- System.Pack_46
908
909     RE_Bits_47,                         -- System.Pack_47
910     RE_Get_47,                          -- System.Pack_47
911     RE_Set_47,                          -- System.Pack_47
912
913     RE_Bits_48,                         -- System.Pack_48
914     RE_Get_48,                          -- System.Pack_48
915     RE_GetU_48,                         -- System.Pack_48
916     RE_Set_48,                          -- System.Pack_48
917     RE_SetU_48,                         -- System.Pack_48
918
919     RE_Bits_49,                         -- System.Pack_49
920     RE_Get_49,                          -- System.Pack_49
921     RE_Set_49,                          -- System.Pack_49
922
923     RE_Bits_50,                         -- System.Pack_50
924     RE_Get_50,                          -- System.Pack_50
925     RE_GetU_50,                         -- System.Pack_50
926     RE_Set_50,                          -- System.Pack_50
927     RE_SetU_50,                         -- System.Pack_50
928
929     RE_Bits_51,                         -- System.Pack_51
930     RE_Get_51,                          -- System.Pack_51
931     RE_Set_51,                          -- System.Pack_51
932
933     RE_Bits_52,                         -- System.Pack_52
934     RE_Get_52,                          -- System.Pack_52
935     RE_GetU_52,                         -- System.Pack_52
936     RE_Set_52,                          -- System.Pack_52
937     RE_SetU_52,                         -- System.Pack_52
938
939     RE_Bits_53,                         -- System.Pack_53
940     RE_Get_53,                          -- System.Pack_53
941     RE_Set_53,                          -- System.Pack_53
942
943     RE_Bits_54,                         -- System.Pack_54
944     RE_Get_54,                          -- System.Pack_54
945     RE_GetU_54,                         -- System.Pack_54
946     RE_Set_54,                          -- System.Pack_54
947     RE_SetU_54,                         -- System.Pack_54
948
949     RE_Bits_55,                         -- System.Pack_55
950     RE_Get_55,                          -- System.Pack_55
951     RE_Set_55,                          -- System.Pack_55
952
953     RE_Bits_56,                         -- System.Pack_56
954     RE_Get_56,                          -- System.Pack_56
955     RE_GetU_56,                         -- System.Pack_56
956     RE_Set_56,                          -- System.Pack_56
957     RE_SetU_56,                         -- System.Pack_56
958
959     RE_Bits_57,                         -- System.Pack_57
960     RE_Get_57,                          -- System.Pack_57
961     RE_Set_57,                          -- System.Pack_57
962
963     RE_Bits_58,                         -- System.Pack_58
964     RE_Get_58,                          -- System.Pack_58
965     RE_GetU_58,                         -- System.Pack_58
966     RE_Set_58,                          -- System.Pack_58
967     RE_SetU_58,                         -- System.Pack_58
968
969     RE_Bits_59,                         -- System.Pack_59
970     RE_Get_59,                          -- System.Pack_59
971     RE_Set_59,                          -- System.Pack_59
972
973     RE_Bits_60,                         -- System.Pack_60
974     RE_Get_60,                          -- System.Pack_60
975     RE_GetU_60,                         -- System.Pack_60
976     RE_Set_60,                          -- System.Pack_60
977     RE_SetU_60,                         -- System.Pack_60
978
979     RE_Bits_61,                         -- System.Pack_61
980     RE_Get_61,                          -- System.Pack_61
981     RE_Set_61,                          -- System.Pack_61
982
983     RE_Bits_62,                         -- System.Pack_62
984     RE_Get_62,                          -- System.Pack_62
985     RE_GetU_62,                         -- System.Pack_62
986     RE_Set_62,                          -- System.Pack_62
987     RE_SetU_62,                         -- System.Pack_62
988
989     RE_Bits_63,                         -- System.Pack_63
990     RE_Get_63,                          -- System.Pack_63
991     RE_Set_63,                          -- System.Pack_63
992
993     RE_Adjust_Storage_Size,             -- System_Parameters
994     RE_Default_Stack_Size,              -- System.Parameters
995     RE_Garbage_Collected,               -- System.Parameters
996     RE_Size_Type,                       -- System.Parameters
997     RE_Unspecified_Size,                -- System.Parameters
998
999     RE_Get_Active_Partition_Id,         -- System.Partition_Interface
1000     RE_Get_Passive_Partition_Id,        -- System.Partition_Interface
1001     RE_Get_Local_Partition_Id,          -- System.Partition_Interface
1002     RE_Get_RCI_Package_Receiver,        -- System.Partition_Interface
1003     RE_Get_Unique_Remote_Pointer,       -- System.Partition_Interface
1004     RE_RACW_Stub_Type,                  -- System.Partition_Interface
1005     RE_RACW_Stub_Type_Access,           -- System.Partition_Interface
1006     RE_Raise_Program_Error_For_E_4_18,  -- System.Partition_Interface
1007     RE_Raise_Program_Error_Unknown_Tag, -- System.Partition_Interface
1008     RE_Register_Passive_Package,        -- System.Partition_Interface
1009     RE_Register_Receiving_Stub,         -- System.Partition_Interface
1010     RE_RCI_Info,                        -- System.Partition_Interface
1011     RE_Subprogram_Id,                   -- System.Partition_Interface
1012
1013     RE_Global_Pool_Object,              -- System.Pool_Global
1014
1015     RE_Unbounded_Reclaim_Pool,          -- System.Pool_Local
1016
1017     RE_Stack_Bounded_Pool,              -- System.Pool_Size
1018
1019     RE_Do_Apc,                          -- System.RPC
1020     RE_Do_Rpc,                          -- System.RPC
1021     RE_Params_Stream_Type,              -- System.RPC
1022     RE_Partition_ID,                    -- System.RPC
1023     RE_RPC_Receiver,                    -- System.RPC
1024
1025     RE_IS_Is1,                          -- System.Scalar_Values
1026     RE_IS_Is2,                          -- System.Scalar_Values
1027     RE_IS_Is4,                          -- System.Scalar_Values
1028     RE_IS_Is8,                          -- System.Scalar_Values
1029     RE_IS_Iu1,                          -- System.Scalar_Values
1030     RE_IS_Iu2,                          -- System.Scalar_Values
1031     RE_IS_Iu4,                          -- System.Scalar_Values
1032     RE_IS_Iu8,                          -- System.Scalar_Values
1033     RE_IS_Isf,                          -- System.Scalar_Values
1034     RE_IS_Ifl,                          -- System.Scalar_Values
1035     RE_IS_Ilf,                          -- System.Scalar_Values
1036     RE_IS_Ill,                          -- System.Scalar_Values
1037
1038     RE_Default_Secondary_Stack_Size,    -- System.Secondary_Stack
1039     RE_Mark_Id,                         -- System.Secondary_Stack
1040     RE_SS_Allocate,                     -- System.Secondary_Stack
1041     RE_SS_Pool,                         -- System.Secondary_Stack
1042     RE_SS_Mark,                         -- System.Secondary_Stack
1043     RE_SS_Release,                      -- System.Secondary_Stack
1044
1045     RE_Shared_Var_Close,                -- System.Shared_Storage
1046     RE_Shared_Var_Lock,                 -- System.Shared_Storage
1047     RE_Shared_Var_ROpen,                -- System.Shared_Storage
1048     RE_Shared_Var_Unlock,               -- System.Shared_Storage
1049     RE_Shared_Var_WOpen,                -- System.Shared_Storage
1050
1051     RE_Abort_Undefer_Direct,            -- System.Standard_Library
1052     RE_Exception_Data_Ptr,              -- System.Standard_Library
1053
1054     RE_Integer_Address,                 -- System.Storage_Elements
1055     RE_Storage_Offset,                  -- System.Storage_Elements
1056     RE_Storage_Array,                   -- System.Storage_Elements
1057     RE_To_Address,                      -- System.Storage_Elements
1058
1059     RE_Root_Storage_Pool,               -- System.Storage_Pools
1060     RE_Allocate_Any,                    -- System_Storage_Pools,
1061     RE_Deallocate_Any,                  -- System_Storage_Pools,
1062
1063     RE_Thin_Pointer,                    -- System.Stream_Attributes
1064     RE_Fat_Pointer,                     -- System.Stream_Attributes
1065
1066     RE_I_AD,                            -- System.Stream_Attributes
1067     RE_I_AS,                            -- System.Stream_Attributes
1068     RE_I_B,                             -- System.Stream_Attributes
1069     RE_I_C,                             -- System.Stream_Attributes
1070     RE_I_F,                             -- System.Stream_Attributes
1071     RE_I_I,                             -- System.Stream_Attributes
1072     RE_I_LF,                            -- System.Stream_Attributes
1073     RE_I_LI,                            -- System.Stream_Attributes
1074     RE_I_LLF,                           -- System.Stream_Attributes
1075     RE_I_LLI,                           -- System.Stream_Attributes
1076     RE_I_LLU,                           -- System.Stream_Attributes
1077     RE_I_LU,                            -- System.Stream_Attributes
1078     RE_I_SF,                            -- System.Stream_Attributes
1079     RE_I_SI,                            -- System.Stream_Attributes
1080     RE_I_SSI,                           -- System.Stream_Attributes
1081     RE_I_SSU,                           -- System.Stream_Attributes
1082     RE_I_SU,                            -- System.Stream_Attributes
1083     RE_I_U,                             -- System.Stream_Attributes
1084     RE_I_WC,                            -- System.Stream_Attributes
1085
1086     RE_W_AD,                            -- System.Stream_Attributes
1087     RE_W_AS,                            -- System.Stream_Attributes
1088     RE_W_B,                             -- System.Stream_Attributes
1089     RE_W_C,                             -- System.Stream_Attributes
1090     RE_W_F,                             -- System.Stream_Attributes
1091     RE_W_I,                             -- System.Stream_Attributes
1092     RE_W_LF,                            -- System.Stream_Attributes
1093     RE_W_LI,                            -- System.Stream_Attributes
1094     RE_W_LLF,                           -- System.Stream_Attributes
1095     RE_W_LLI,                           -- System.Stream_Attributes
1096     RE_W_LLU,                           -- System.Stream_Attributes
1097     RE_W_LU,                            -- System.Stream_Attributes
1098     RE_W_SF,                            -- System.Stream_Attributes
1099     RE_W_SI,                            -- System.Stream_Attributes
1100     RE_W_SSI,                           -- System.Stream_Attributes
1101     RE_W_SSU,                           -- System.Stream_Attributes
1102     RE_W_SU,                            -- System.Stream_Attributes
1103     RE_W_U,                             -- System.Stream_Attributes
1104     RE_W_WC,                            -- System.Stream_Attributes
1105
1106     RE_Block_Stream_Ops_OK,             -- System.Stream_Attributes
1107
1108     RE_Str_Concat,                      -- System.String_Ops
1109     RE_Str_Concat_CC,                   -- System.String_Ops
1110     RE_Str_Concat_CS,                   -- System.String_Ops
1111     RE_Str_Concat_SC,                   -- System.String_Ops
1112     RE_Str_Normalize,                   -- System.String_Ops
1113     RE_Wide_Str_Normalize,              -- System.String_Ops
1114
1115     RE_Str_Concat_3,                    -- System.String_Ops_Concat_3
1116
1117     RE_Str_Concat_4,                    -- System.String_Ops_Concat_4
1118
1119     RE_Str_Concat_5,                    -- System.String_Ops_Concat_5
1120
1121     RE_Task_Info_Type,                  -- System.Task_Info
1122     RE_Unspecified_Task_Info,           -- System.Task_Info
1123
1124     RE_Library_Task_Level,              -- System.Tasking
1125
1126     RE_Task_Procedure_Access,           -- System.Tasking
1127
1128     RO_ST_Task_ID,                      -- System.Tasking
1129
1130     RE_Call_Modes,                      -- System.Tasking
1131     RE_Simple_Call,                     -- System.Tasking
1132     RE_Conditional_Call,                -- System.Tasking
1133     RE_Asynchronous_Call,               -- System.Tasking
1134     RE_Timed_Call,                      -- System.Tasking
1135
1136     RE_Task_List,                       -- System.Tasking
1137
1138     RE_Accept_Alternative,              -- System.Tasking
1139     RE_Accept_List,                     -- System.Tasking
1140     RE_Accept_List_Access,              -- System.Tasking
1141     RE_Max_Select,                      -- System.Tasking
1142     RE_Max_Task_Entry,                  -- System.Tasking
1143     RE_No_Rendezvous,                   -- System.Tasking
1144     RE_Null_Task_Entry,                 -- System.Tasking
1145     RE_Positive_Select_Index,           -- System.Tasking
1146     RE_Select_Index,                    -- System.Tasking
1147     RE_Select_Modes,                    -- System.Tasking
1148     RE_Else_Mode,                       -- System.Tasking
1149     RE_Simple_Mode,                     -- System.Tasking
1150     RE_Terminate_Mode,                  -- System.Tasking
1151     RE_Delay_Mode,                      -- System.Tasking
1152     RE_Task_Entry_Index,                -- System.Tasking
1153     RE_Self,                            -- System.Tasking
1154
1155     RE_Master_Id,                       -- System.Tasking
1156     RE_Unspecified_Priority,            -- System.Tasking
1157
1158     RE_Activation_Chain,                -- System.Tasking
1159
1160     RE_Abort_Defer,                     -- System.Soft_Links
1161     RE_Abort_Undefer,                   -- System.Soft_Links
1162     RE_Complete_Master,                 -- System.Soft_Links
1163     RE_Current_Master,                  -- System.Soft_Links
1164     RE_Enter_Master,                    -- System.Soft_Links
1165     RE_Get_Current_Excep,               -- System.Soft_Links
1166     RE_Get_GNAT_Exception,              -- System.Soft_Links
1167     RE_Update_Exception,                -- System.Soft_Links
1168
1169     RE_ATSD,                            -- System.Threads
1170     RE_Thread_Body_Enter,               -- System.Threads
1171     RE_Thread_Body_Exceptional_Exit,    -- System.Threads
1172     RE_Thread_Body_Leave,               -- System.Threads
1173
1174     RE_Bits_1,                          -- System.Unsigned_Types
1175     RE_Bits_2,                          -- System.Unsigned_Types
1176     RE_Bits_4,                          -- System.Unsigned_Types
1177     RE_Float_Unsigned,                  -- System.Unsigned_Types
1178     RE_Long_Unsigned,                   -- System.Unsigned_Types
1179     RE_Long_Long_Unsigned,              -- System.Unsigned_Types
1180     RE_Packed_Byte,                     -- System.Unsigned_Types
1181     RE_Packed_Bytes1,                   -- System.Unsigned_Types
1182     RE_Packed_Bytes2,                   -- System.Unsigned_Types
1183     RE_Packed_Bytes4,                   -- System.Unsigned_Types
1184     RE_Short_Unsigned,                  -- System.Unsigned_Types
1185     RE_Short_Short_Unsigned,            -- System.Unsigned_Types
1186     RE_Unsigned,                        -- System.Unsigned_Types
1187
1188     RE_Value_Boolean,                   -- System.Val_Bool
1189
1190     RE_Value_Character,                 -- System.Val_Char
1191
1192     RE_Value_Decimal,                   -- System.Val_Dec
1193
1194     RE_Value_Enumeration_8,             -- System.Val_Enum
1195     RE_Value_Enumeration_16,            -- System.Val_Enum
1196     RE_Value_Enumeration_32,            -- System.Val_Enum
1197
1198     RE_Value_Integer,                   -- System.Val_Int
1199
1200     RE_Value_Long_Long_Decimal,         -- System.Val_LLD
1201
1202     RE_Value_Long_Long_Integer,         -- System.Val_LLI
1203
1204     RE_Value_Long_Long_Unsigned,        -- System.Val_LLU
1205
1206     RE_Value_Real,                      -- System.Val_Real
1207
1208     RE_Value_Unsigned,                  -- System.Val_Uns
1209
1210     RE_Value_Wide_Character,            -- System.Val_WChar
1211
1212     RE_D,                               -- System.Vax_Float_Operations
1213     RE_F,                               -- System.Vax_Float_Operations
1214     RE_G,                               -- System.Vax_Float_Operations
1215     RE_Q,                               -- System.Vax_Float_Operations
1216     RE_S,                               -- System.Vax_Float_Operations
1217     RE_T,                               -- System.Vax_Float_Operations
1218
1219     RE_D_To_G,                          -- System.Vax_Float_Operations
1220     RE_F_To_G,                          -- System.Vax_Float_Operations
1221     RE_F_To_Q,                          -- System.Vax_Float_Operations
1222     RE_F_To_S,                          -- System.Vax_Float_Operations
1223     RE_G_To_D,                          -- System.Vax_Float_Operations
1224     RE_G_To_F,                          -- System.Vax_Float_Operations
1225     RE_G_To_Q,                          -- System.Vax_Float_Operations
1226     RE_G_To_T,                          -- System.Vax_Float_Operations
1227     RE_Q_To_F,                          -- System.Vax_Float_Operations
1228     RE_Q_To_G,                          -- System.Vax_Float_Operations
1229     RE_S_To_F,                          -- System.Vax_Float_Operations
1230     RE_T_To_D,                          -- System.Vax_Float_Operations
1231     RE_T_To_G,                          -- System.Vax_Float_Operations
1232
1233     RE_Abs_F,                           -- System.Vax_Float_Operations
1234     RE_Abs_G,                           -- System.Vax_Float_Operations
1235     RE_Add_F,                           -- System.Vax_Float_Operations
1236     RE_Add_G,                           -- System.Vax_Float_Operations
1237     RE_Div_F,                           -- System.Vax_Float_Operations
1238     RE_Div_G,                           -- System.Vax_Float_Operations
1239     RE_Mul_F,                           -- System.Vax_Float_Operations
1240     RE_Mul_G,                           -- System.Vax_Float_Operations
1241     RE_Neg_F,                           -- System.Vax_Float_Operations
1242     RE_Neg_G,                           -- System.Vax_Float_Operations
1243     RE_Sub_F,                           -- System.Vax_Float_Operations
1244     RE_Sub_G,                           -- System.Vax_Float_Operations
1245
1246     RE_Eq_F,                            -- System.Vax_Float_Operations
1247     RE_Eq_G,                            -- System.Vax_Float_Operations
1248     RE_Le_F,                            -- System.Vax_Float_Operations
1249     RE_Le_G,                            -- System.Vax_Float_Operations
1250     RE_Lt_F,                            -- System.Vax_Float_Operations
1251     RE_Lt_G,                            -- System.Vax_Float_Operations
1252
1253     RE_Version_String,                  -- System.Version_Control
1254     RE_Get_Version_String,              -- System.Version_Control
1255
1256     RE_Register_VMS_Exception,          -- System.VMS_Exception_Table
1257
1258     RE_String_To_Wide_String,           -- System.WCh_StW
1259
1260     RE_Wide_String_To_String,           -- System.WCh_WtS
1261
1262     RE_Wide_Width_Character,            -- System.WWd_Char
1263
1264     RE_Wide_Width_Enumeration_8,        -- System.WWd_Enum
1265     RE_Wide_Width_Enumeration_16,       -- System.WWd_Enum
1266     RE_Wide_Width_Enumeration_32,       -- System.WWd_Enum
1267
1268     RE_Wide_Width_Wide_Character,       -- System.WWd_Wchar
1269
1270     RE_Width_Boolean,                   -- System.Wid_Bool
1271
1272     RE_Width_Character,                 -- System.Wid_Char
1273
1274     RE_Width_Enumeration_8,             -- System.Wid_Enum
1275     RE_Width_Enumeration_16,            -- System.Wid_Enum
1276     RE_Width_Enumeration_32,            -- System.Wid_Enum
1277
1278     RE_Width_Long_Long_Integer,         -- System.Wid_LLI
1279
1280     RE_Width_Long_Long_Unsigned,        -- System.Wid_LLU
1281
1282     RE_Width_Wide_Character,            -- System.Wid_WChar
1283
1284     RE_Protected_Entry_Body_Array,      -- Tasking.Protected_Objects.Entries
1285     RE_Protection_Entries,              -- Tasking.Protected_Objects.Entries
1286     RE_Initialize_Protection_Entries,   -- Tasking.Protected_Objects.Entries
1287     RE_Lock_Entries,                    -- Tasking.Protected_Objects.Entries
1288     RE_Lock_Read_Only_Entries,          -- Tasking.Protected_Objects.Entries
1289     RE_Unlock_Entries,                  -- Tasking.Protected_Objects.Entries
1290     RE_Communication_Block,             -- Protected_Objects.Operations
1291     RE_Protected_Entry_Call,            -- Protected_Objects.Operations
1292     RE_Service_Entries,                 -- Protected_Objects.Operations
1293     RE_Cancel_Protected_Entry_Call,     -- Protected_Objects.Operations
1294     RE_Enqueued,                        -- Protected_Objects.Operations
1295     RE_Cancelled,                       -- Protected_Objects.Operations
1296     RE_Complete_Entry_Body,             -- Protected_Objects.Operations
1297     RE_Exceptional_Complete_Entry_Body, -- Protected_Objects.Operations
1298     RE_Requeue_Protected_Entry,         -- Protected_Objects.Operations
1299     RE_Requeue_Task_To_Protected_Entry, -- Protected_Objects.Operations
1300     RE_Protected_Count,                 -- Protected_Objects.Operations
1301     RE_Protected_Entry_Caller,          -- Protected_Objects.Operations
1302     RE_Timed_Protected_Entry_Call,      -- Protected_Objects.Operations
1303
1304     RE_Protection_Entry,                -- Protected_Objects.Single_Entry
1305     RE_Initialize_Protection_Entry,     -- Protected_Objects.Single_Entry
1306     RE_Lock_Entry,                      -- Protected_Objects.Single_Entry
1307     RE_Lock_Read_Only_Entry,            -- Protected_Objects.Single_Entry
1308     RE_Unlock_Entry,                    -- Protected_Objects.Single_Entry
1309     RE_Protected_Single_Entry_Call,     -- Protected_Objects.Single_Entry
1310     RE_Service_Entry,                   -- Protected_Objects.Single_Entry
1311     RE_Complete_Single_Entry_Body,      -- Protected_Objects.Single_Entry
1312     RE_Exceptional_Complete_Single_Entry_Body,
1313     RE_Protected_Count_Entry,           -- Protected_Objects.Single_Entry
1314     RE_Protected_Single_Entry_Caller,   -- Protected_Objects.Single_Entry
1315     RE_Timed_Protected_Single_Entry_Call,
1316
1317     RE_Protected_Entry_Index,           -- System.Tasking.Protected_Objects
1318     RE_Entry_Body,                      -- System.Tasking.Protected_Objects
1319     RE_Protection,                      -- System.Tasking.Protected_Objects
1320     RE_Initialize_Protection,           -- System.Tasking.Protected_Objects
1321     RE_Finalize_Protection,             -- System.Tasking.Protected_Objects
1322     RE_Lock,                            -- System.Tasking.Protected_Objects
1323     RE_Lock_Read_Only,                  -- System.Tasking.Protected_Objects
1324     RE_Unlock,                          -- System.Tasking.Protected_Objects
1325
1326     RE_Delay_Block,                     -- System.Tasking.Async_Delays
1327     RE_Timed_Out,                       -- System.Tasking.Async_Delays
1328     RE_Cancel_Async_Delay,              -- System.Tasking.Async_Delays
1329     RE_Enqueue_Duration,                -- System.Tasking.Async_Delays
1330     RE_Enqueue_Calendar,                -- System.Tasking.Async_Delays
1331     RE_Enqueue_RT,                      -- System.Tasking.Async_Delays
1332
1333     RE_Accept_Call,                     -- System.Tasking.Rendezvous
1334     RE_Accept_Trivial,                  -- System.Tasking.Rendezvous
1335     RE_Callable,                        -- System.Tasking.Rendezvous
1336     RE_Call_Simple,                     -- System.Tasking.Rendezvous
1337     RE_Requeue_Task_Entry,              -- System.Tasking.Rendezvous
1338     RE_Requeue_Protected_To_Task_Entry, -- System.Tasking.Rendezvous
1339     RE_Cancel_Task_Entry_Call,          -- System.Tasking.Rendezvous
1340     RE_Complete_Rendezvous,             -- System.Tasking.Rendezvous
1341     RE_Task_Count,                      -- System.Tasking.Rendezvous
1342     RE_Exceptional_Complete_Rendezvous, -- System.Tasking.Rendezvous
1343     RE_Selective_Wait,                  -- System.Tasking.Rendezvous
1344     RE_Task_Entry_Call,                 -- System.Tasking.Rendezvous
1345     RE_Task_Entry_Caller,               -- System.Tasking.Rendezvous
1346     RE_Timed_Task_Entry_Call,           -- System.Tasking.Rendezvous
1347     RE_Timed_Selective_Wait,            -- System.Tasking.Rendezvous
1348
1349     RE_Activate_Restricted_Tasks,       -- System.Tasking.Restricted.Stages
1350     RE_Complete_Restricted_Activation,  -- System.Tasking.Restricted.Stages
1351     RE_Create_Restricted_Task,          -- System.Tasking.Restricted.Stages
1352     RE_Complete_Restricted_Task,        -- System.Tasking.Restricted.Stages
1353     RE_Restricted_Terminated,           -- System.Tasking.Restricted.Stages
1354
1355     RE_Abort_Tasks,                     -- System.Tasking.Stages
1356     RE_Activate_Tasks,                  -- System.Tasking.Stages
1357     RE_Complete_Activation,             -- System.Tasking.Stages
1358     RE_Create_Task,                     -- System.Tasking.Stages
1359     RE_Complete_Task,                   -- System.Tasking.Stages
1360     RE_Free_Task,                       -- System.Tasking.Stages
1361     RE_Expunge_Unactivated_Tasks,       -- System.Tasking.Stages
1362     RE_Terminated);                     -- System.Tasking.Stages
1363
1364   --  The following declarations build a table that is indexed by the
1365   --  RTE function to determine the unit containing the given entity.
1366   --  This table is sorted in order of package names.
1367
1368   RE_Unit_Table : array (RE_Id) of RTU_Id := (
1369
1370     RE_Null                             => RTU_Null,
1371
1372     RE_Exceptions_Available_In_HIE      => Ada_Exceptions,
1373     RE_Code_Loc                         => Ada_Exceptions,
1374     RE_Current_Target_Exception         => Ada_Exceptions, -- of JGNAT
1375     RE_Exception_Id                     => Ada_Exceptions,
1376     RE_Exception_Information            => Ada_Exceptions,
1377     RE_Exception_Message                => Ada_Exceptions,
1378     RE_Exception_Name_Simple            => Ada_Exceptions,
1379     RE_Exception_Occurrence             => Ada_Exceptions,
1380     RE_Null_Id                          => Ada_Exceptions,
1381     RE_Null_Occurrence                  => Ada_Exceptions,
1382     RE_Poll                             => Ada_Exceptions,
1383     RE_Raise_Exception                  => Ada_Exceptions,
1384     RE_Raise_Exception_Always           => Ada_Exceptions,
1385     RE_Reraise_Occurrence               => Ada_Exceptions,
1386     RE_Reraise_Occurrence_Always        => Ada_Exceptions,
1387     RE_Reraise_Occurrence_No_Defer      => Ada_Exceptions,
1388     RE_Save_Occurrence                  => Ada_Exceptions,
1389
1390     RE_Simple_List_Controller           => Ada_Finalization_List_Controller,
1391     RE_List_Controller                  => Ada_Finalization_List_Controller,
1392
1393     RE_Interrupt_ID                     => Ada_Interrupts,
1394
1395     RE_Names                            => Ada_Interrupts_Names,
1396
1397     RE_Root_Stream_Type                 => Ada_Streams,
1398     RE_Stream_Element                   => Ada_Streams,
1399     RE_Stream_Element_Count             => Ada_Streams,
1400     RE_Stream_Element_Offset            => Ada_Streams,
1401     RE_Stream_Element_Array             => Ada_Streams,
1402
1403     RE_Stream_Access                    => Ada_Streams_Stream_IO,
1404
1405     RE_CW_Membership                    => Ada_Tags,
1406     RE_DT_Entry_Size                    => Ada_Tags,
1407     RE_DT_Prologue_Size                 => Ada_Tags,
1408     RE_External_Tag                     => Ada_Tags,
1409     RE_Get_Expanded_Name                => Ada_Tags,
1410     RE_Get_External_Tag                 => Ada_Tags,
1411     RE_Get_Prim_Op_Address              => Ada_Tags,
1412     RE_Get_RC_Offset                    => Ada_Tags,
1413     RE_Get_Remotely_Callable            => Ada_Tags,
1414     RE_Get_TSD                          => Ada_Tags,
1415     RE_Inherit_DT                       => Ada_Tags,
1416     RE_Inherit_TSD                      => Ada_Tags,
1417     RE_Internal_Tag                     => Ada_Tags,
1418     RE_Register_Tag                     => Ada_Tags,
1419     RE_Set_Expanded_Name                => Ada_Tags,
1420     RE_Set_External_Tag                 => Ada_Tags,
1421     RE_Set_Prim_Op_Address              => Ada_Tags,
1422     RE_Set_RC_Offset                    => Ada_Tags,
1423     RE_Set_Remotely_Callable            => Ada_Tags,
1424     RE_Set_TSD                          => Ada_Tags,
1425     RE_Tag_Error                        => Ada_Tags,
1426     RE_TSD_Entry_Size                   => Ada_Tags,
1427     RE_TSD_Prologue_Size                => Ada_Tags,
1428     RE_Tag                              => Ada_Tags,
1429     RE_Address_Array                    => Ada_Tags,
1430
1431     RE_Abort_Task                       => Ada_Task_Identification,
1432     RE_Current_Task                     => Ada_Task_Identification,
1433     RO_AT_Task_ID                       => Ada_Task_Identification,
1434
1435     RO_CA_Time                          => Ada_Calendar,
1436     RO_CA_Delay_For                     => Ada_Calendar_Delays,
1437     RO_CA_Delay_Until                   => Ada_Calendar_Delays,
1438     RO_CA_To_Duration                   => Ada_Calendar_Delays,
1439
1440     RO_RT_Time                          => Ada_Real_Time,
1441     RO_RT_Delay_Until                   => Ada_Real_Time_Delays,
1442     RO_RT_To_Duration                   => Ada_Real_Time_Delays,
1443
1444     RE_Integer_64                       => Interfaces,
1445     RE_Unsigned_8                       => Interfaces,
1446     RE_Unsigned_16                      => Interfaces,
1447     RE_Unsigned_32                      => Interfaces,
1448     RE_Unsigned_64                      => Interfaces,
1449
1450     RE_Vtable_Ptr                       => Interfaces_CPP,
1451     RE_Displaced_This                   => Interfaces_CPP,
1452     RE_CPP_CW_Membership                => Interfaces_CPP,
1453     RE_CPP_DT_Entry_Size                => Interfaces_CPP,
1454     RE_CPP_DT_Prologue_Size             => Interfaces_CPP,
1455     RE_CPP_Get_Expanded_Name            => Interfaces_CPP,
1456     RE_CPP_Get_External_Tag             => Interfaces_CPP,
1457     RE_CPP_Get_Prim_Op_Address          => Interfaces_CPP,
1458     RE_CPP_Get_RC_Offset                => Interfaces_CPP,
1459     RE_CPP_Get_Remotely_Callable        => Interfaces_CPP,
1460     RE_CPP_Get_TSD                      => Interfaces_CPP,
1461     RE_CPP_Inherit_DT                   => Interfaces_CPP,
1462     RE_CPP_Inherit_TSD                  => Interfaces_CPP,
1463     RE_CPP_Register_Tag                 => Interfaces_CPP,
1464     RE_CPP_Set_Expanded_Name            => Interfaces_CPP,
1465     RE_CPP_Set_External_Tag             => Interfaces_CPP,
1466     RE_CPP_Set_Prim_Op_Address          => Interfaces_CPP,
1467     RE_CPP_Set_RC_Offset                => Interfaces_CPP,
1468     RE_CPP_Set_Remotely_Callable        => Interfaces_CPP,
1469     RE_CPP_Set_TSD                      => Interfaces_CPP,
1470     RE_CPP_TSD_Entry_Size               => Interfaces_CPP,
1471     RE_CPP_TSD_Prologue_Size            => Interfaces_CPP,
1472
1473     RE_Packed_Size                      => Interfaces_Packed_Decimal,
1474     RE_Packed_To_Int32                  => Interfaces_Packed_Decimal,
1475     RE_Packed_To_Int64                  => Interfaces_Packed_Decimal,
1476     RE_Int32_To_Packed                  => Interfaces_Packed_Decimal,
1477     RE_Int64_To_Packed                  => Interfaces_Packed_Decimal,
1478
1479     RE_Address                          => System,
1480     RE_Any_Priority                     => System,
1481     RE_Bit_Order                        => System,
1482     RE_Default_Priority                 => System,
1483     RE_High_Order_First                 => System,
1484     RE_Interrupt_Priority               => System,
1485     RE_Lib_Stop                         => System,
1486     RE_Low_Order_First                  => System,
1487     RE_Max_Interrupt_Priority           => System,
1488     RE_Max_Priority                     => System,
1489     RE_Null_Address                     => System,
1490     RE_Priority                         => System,
1491
1492     RE_Add_With_Ovflo_Check             => System_Arith_64,
1493     RE_Double_Divide                    => System_Arith_64,
1494     RE_Multiply_With_Ovflo_Check        => System_Arith_64,
1495     RE_Scaled_Divide                    => System_Arith_64,
1496     RE_Subtract_With_Ovflo_Check        => System_Arith_64,
1497
1498     RE_Create_AST_Handler               => System_AST_Handling,
1499
1500     RE_Raise_Assert_Failure             => System_Assertions,
1501
1502     RE_AST_Handler                      => System_Aux_DEC,
1503     RE_Import_Value                     => System_Aux_DEC,
1504     RE_No_AST_Handler                   => System_Aux_DEC,
1505     RE_Type_Class                       => System_Aux_DEC,
1506     RE_Type_Class_Enumeration           => System_Aux_DEC,
1507     RE_Type_Class_Integer               => System_Aux_DEC,
1508     RE_Type_Class_Fixed_Point           => System_Aux_DEC,
1509     RE_Type_Class_Floating_Point        => System_Aux_DEC,
1510     RE_Type_Class_Array                 => System_Aux_DEC,
1511     RE_Type_Class_Record                => System_Aux_DEC,
1512     RE_Type_Class_Access                => System_Aux_DEC,
1513     RE_Type_Class_Task                  => System_Aux_DEC,
1514     RE_Type_Class_Address               => System_Aux_DEC,
1515
1516     RE_Bit_And                          => System_Bit_Ops,
1517     RE_Bit_Eq                           => System_Bit_Ops,
1518     RE_Bit_Not                          => System_Bit_Ops,
1519     RE_Bit_Or                           => System_Bit_Ops,
1520     RE_Bit_Xor                          => System_Bit_Ops,
1521
1522     RE_Checked_Pool                     => System_Checked_Pools,
1523
1524     RE_Boolean_Array                    => System_Boolean_Array_Operations,
1525     RE_Vector_Not                       => System_Boolean_Array_Operations,
1526     RE_Vector_And                       => System_Boolean_Array_Operations,
1527     RE_Vector_Or                        => System_Boolean_Array_Operations,
1528     RE_Vector_Nand                      => System_Boolean_Array_Operations,
1529     RE_Vector_Nor                       => System_Boolean_Array_Operations,
1530     RE_Vector_Nxor                      => System_Boolean_Array_Operations,
1531     RE_Vector_Xor                       => System_Boolean_Array_Operations,
1532
1533     RE_Compare_Array_S8                 => System_Compare_Array_Signed_8,
1534     RE_Compare_Array_S8_Unaligned       => System_Compare_Array_Signed_8,
1535
1536     RE_Compare_Array_S16                => System_Compare_Array_Signed_16,
1537
1538     RE_Compare_Array_S32                => System_Compare_Array_Signed_32,
1539
1540     RE_Compare_Array_S64                => System_Compare_Array_Signed_64,
1541
1542     RE_Compare_Array_U8                 => System_Compare_Array_Unsigned_8,
1543     RE_Compare_Array_U8_Unaligned       => System_Compare_Array_Unsigned_8,
1544
1545     RE_Compare_Array_U16                => System_Compare_Array_Unsigned_16,
1546
1547     RE_Compare_Array_U32                => System_Compare_Array_Unsigned_32,
1548
1549     RE_Compare_Array_U64                => System_Compare_Array_Unsigned_64,
1550
1551     RE_Register_Exception               => System_Exception_Table,
1552
1553     RE_All_Others_Id                    => System_Exceptions,
1554     RE_Handler_Record                   => System_Exceptions,
1555     RE_Handler_Record_Ptr               => System_Exceptions,
1556     RE_Others_Id                        => System_Exceptions,
1557     RE_Subprogram_Descriptor            => System_Exceptions,
1558     RE_Subprogram_Descriptor_0          => System_Exceptions,
1559     RE_Subprogram_Descriptor_1          => System_Exceptions,
1560     RE_Subprogram_Descriptor_2          => System_Exceptions,
1561     RE_Subprogram_Descriptor_3          => System_Exceptions,
1562     RE_Subprogram_Descriptor_List       => System_Exceptions,
1563     RE_Subprogram_Descriptor_Ptr        => System_Exceptions,
1564     RE_Subprogram_Descriptors_Record    => System_Exceptions,
1565     RE_Subprogram_Descriptors_Ptr       => System_Exceptions,
1566
1567     RE_Exn_Integer                      => System_Exn_Int,
1568
1569     RE_Exn_Long_Long_Float              => System_Exn_LLF,
1570
1571     RE_Exn_Long_Long_Integer            => System_Exn_LLI,
1572
1573     RE_Exp_Integer                      => System_Exp_Int,
1574
1575     RE_Exp_Long_Long_Integer            => System_Exp_LLI,
1576
1577     RE_Exp_Long_Long_Unsigned           => System_Exp_LLU,
1578
1579     RE_Exp_Modular                      => System_Exp_Mod,
1580
1581     RE_Exp_Unsigned                     => System_Exp_Uns,
1582
1583     RE_Fat_Float                        => System_Fat_Flt,
1584
1585     RE_Fat_Long_Float                   => System_Fat_LFlt,
1586
1587     RE_Fat_Long_Long_Float              => System_Fat_LLF,
1588
1589     RE_Fat_Short_Float                  => System_Fat_SFlt,
1590
1591     RE_Attach_To_Final_List             => System_Finalization_Implementation,
1592     RE_Finalize_List                    => System_Finalization_Implementation,
1593     RE_Finalize_One                     => System_Finalization_Implementation,
1594     RE_Global_Final_List                => System_Finalization_Implementation,
1595     RE_Record_Controller                => System_Finalization_Implementation,
1596     RE_Limited_Record_Controller        => System_Finalization_Implementation,
1597     RE_Deep_Tag_Initialize              => System_Finalization_Implementation,
1598     RE_Deep_Tag_Adjust                  => System_Finalization_Implementation,
1599     RE_Deep_Tag_Finalize                => System_Finalization_Implementation,
1600     RE_Deep_Tag_Attach                  => System_Finalization_Implementation,
1601     RE_Deep_Rec_Initialize              => System_Finalization_Implementation,
1602     RE_Deep_Rec_Adjust                  => System_Finalization_Implementation,
1603     RE_Deep_Rec_Finalize                => System_Finalization_Implementation,
1604
1605     RE_Root_Controlled                  => System_Finalization_Root,
1606     RE_Finalizable                      => System_Finalization_Root,
1607     RE_Finalizable_Ptr                  => System_Finalization_Root,
1608
1609     RE_Fore                             => System_Fore,
1610
1611     RE_Image_Boolean                    => System_Img_Bool,
1612
1613     RE_Image_Character                  => System_Img_Char,
1614
1615     RE_Image_Decimal                    => System_Img_Dec,
1616
1617     RE_Image_Enumeration_8              => System_Img_Enum,
1618     RE_Image_Enumeration_16             => System_Img_Enum,
1619     RE_Image_Enumeration_32             => System_Img_Enum,
1620
1621     RE_Image_Integer                    => System_Img_Int,
1622
1623     RE_Image_Long_Long_Decimal          => System_Img_LLD,
1624
1625     RE_Image_Long_Long_Integer          => System_Img_LLI,
1626
1627     RE_Image_Long_Long_Unsigned         => System_Img_LLU,
1628
1629     RE_Image_Ordinary_Fixed_Point       => System_Img_Real,
1630     RE_Image_Floating_Point             => System_Img_Real,
1631
1632     RE_Image_Unsigned                   => System_Img_Uns,
1633
1634     RE_Image_Wide_Character             => System_Img_WChar,
1635
1636     RE_Bind_Interrupt_To_Entry          => System_Interrupts,
1637     RE_Default_Interrupt_Priority       => System_Interrupts,
1638     RE_Dynamic_Interrupt_Protection     => System_Interrupts,
1639     RE_Install_Handlers                 => System_Interrupts,
1640     RE_Register_Interrupt_Handler       => System_Interrupts,
1641     RE_Static_Interrupt_Protection      => System_Interrupts,
1642     RE_System_Interrupt_Id              => System_Interrupts,
1643
1644     RE_Asm_Insn                         => System_Machine_Code,
1645     RE_Asm_Input_Operand                => System_Machine_Code,
1646     RE_Asm_Output_Operand               => System_Machine_Code,
1647
1648     RE_Mantissa_Value                   => System_Mantissa,
1649
1650     RE_memcpy                           => System_Memcop,
1651     RE_memmove                          => System_Memcop,
1652
1653     RE_Bits_03                          => System_Pack_03,
1654     RE_Get_03                           => System_Pack_03,
1655     RE_Set_03                           => System_Pack_03,
1656
1657     RE_Bits_05                          => System_Pack_05,
1658     RE_Get_05                           => System_Pack_05,
1659     RE_Set_05                           => System_Pack_05,
1660
1661     RE_Bits_06                          => System_Pack_06,
1662     RE_Get_06                           => System_Pack_06,
1663     RE_GetU_06                          => System_Pack_06,
1664     RE_Set_06                           => System_Pack_06,
1665     RE_SetU_06                          => System_Pack_06,
1666
1667     RE_Bits_07                          => System_Pack_07,
1668     RE_Get_07                           => System_Pack_07,
1669     RE_Set_07                           => System_Pack_07,
1670
1671     RE_Bits_09                          => System_Pack_09,
1672     RE_Get_09                           => System_Pack_09,
1673     RE_Set_09                           => System_Pack_09,
1674
1675     RE_Bits_10                          => System_Pack_10,
1676     RE_Get_10                           => System_Pack_10,
1677     RE_GetU_10                          => System_Pack_10,
1678     RE_Set_10                           => System_Pack_10,
1679     RE_SetU_10                          => System_Pack_10,
1680
1681     RE_Bits_11                          => System_Pack_11,
1682     RE_Get_11                           => System_Pack_11,
1683     RE_Set_11                           => System_Pack_11,
1684
1685     RE_Bits_12                          => System_Pack_12,
1686     RE_Get_12                           => System_Pack_12,
1687     RE_GetU_12                          => System_Pack_12,
1688     RE_Set_12                           => System_Pack_12,
1689     RE_SetU_12                          => System_Pack_12,
1690
1691     RE_Bits_13                          => System_Pack_13,
1692     RE_Get_13                           => System_Pack_13,
1693     RE_Set_13                           => System_Pack_13,
1694
1695     RE_Bits_14                          => System_Pack_14,
1696     RE_Get_14                           => System_Pack_14,
1697     RE_GetU_14                          => System_Pack_14,
1698     RE_Set_14                           => System_Pack_14,
1699     RE_SetU_14                          => System_Pack_14,
1700
1701     RE_Bits_15                          => System_Pack_15,
1702     RE_Get_15                           => System_Pack_15,
1703     RE_Set_15                           => System_Pack_15,
1704
1705     RE_Bits_17                          => System_Pack_17,
1706     RE_Get_17                           => System_Pack_17,
1707     RE_Set_17                           => System_Pack_17,
1708
1709     RE_Bits_18                          => System_Pack_18,
1710     RE_Get_18                           => System_Pack_18,
1711     RE_GetU_18                          => System_Pack_18,
1712     RE_Set_18                           => System_Pack_18,
1713     RE_SetU_18                          => System_Pack_18,
1714
1715     RE_Bits_19                          => System_Pack_19,
1716     RE_Get_19                           => System_Pack_19,
1717     RE_Set_19                           => System_Pack_19,
1718
1719     RE_Bits_20                          => System_Pack_20,
1720     RE_Get_20                           => System_Pack_20,
1721     RE_GetU_20                          => System_Pack_20,
1722     RE_Set_20                           => System_Pack_20,
1723     RE_SetU_20                          => System_Pack_20,
1724
1725     RE_Bits_21                          => System_Pack_21,
1726     RE_Get_21                           => System_Pack_21,
1727     RE_Set_21                           => System_Pack_21,
1728
1729     RE_Bits_22                          => System_Pack_22,
1730     RE_Get_22                           => System_Pack_22,
1731     RE_GetU_22                          => System_Pack_22,
1732     RE_Set_22                           => System_Pack_22,
1733     RE_SetU_22                          => System_Pack_22,
1734
1735     RE_Bits_23                          => System_Pack_23,
1736     RE_Get_23                           => System_Pack_23,
1737     RE_Set_23                           => System_Pack_23,
1738
1739     RE_Bits_24                          => System_Pack_24,
1740     RE_Get_24                           => System_Pack_24,
1741     RE_GetU_24                          => System_Pack_24,
1742     RE_Set_24                           => System_Pack_24,
1743     RE_SetU_24                          => System_Pack_24,
1744
1745     RE_Bits_25                          => System_Pack_25,
1746     RE_Get_25                           => System_Pack_25,
1747     RE_Set_25                           => System_Pack_25,
1748
1749     RE_Bits_26                          => System_Pack_26,
1750     RE_Get_26                           => System_Pack_26,
1751     RE_GetU_26                          => System_Pack_26,
1752     RE_Set_26                           => System_Pack_26,
1753     RE_SetU_26                          => System_Pack_26,
1754
1755     RE_Bits_27                          => System_Pack_27,
1756     RE_Get_27                           => System_Pack_27,
1757     RE_Set_27                           => System_Pack_27,
1758
1759     RE_Bits_28                          => System_Pack_28,
1760     RE_Get_28                           => System_Pack_28,
1761     RE_GetU_28                          => System_Pack_28,
1762     RE_Set_28                           => System_Pack_28,
1763     RE_SetU_28                          => System_Pack_28,
1764
1765     RE_Bits_29                          => System_Pack_29,
1766     RE_Get_29                           => System_Pack_29,
1767     RE_Set_29                           => System_Pack_29,
1768
1769     RE_Bits_30                          => System_Pack_30,
1770     RE_Get_30                           => System_Pack_30,
1771     RE_GetU_30                          => System_Pack_30,
1772     RE_Set_30                           => System_Pack_30,
1773     RE_SetU_30                          => System_Pack_30,
1774
1775     RE_Bits_31                          => System_Pack_31,
1776     RE_Get_31                           => System_Pack_31,
1777     RE_Set_31                           => System_Pack_31,
1778
1779     RE_Bits_33                          => System_Pack_33,
1780     RE_Get_33                           => System_Pack_33,
1781     RE_Set_33                           => System_Pack_33,
1782
1783     RE_Bits_34                          => System_Pack_34,
1784     RE_Get_34                           => System_Pack_34,
1785     RE_GetU_34                          => System_Pack_34,
1786     RE_Set_34                           => System_Pack_34,
1787     RE_SetU_34                          => System_Pack_34,
1788
1789     RE_Bits_35                          => System_Pack_35,
1790     RE_Get_35                           => System_Pack_35,
1791     RE_Set_35                           => System_Pack_35,
1792
1793     RE_Bits_36                          => System_Pack_36,
1794     RE_Get_36                           => System_Pack_36,
1795     RE_GetU_36                          => System_Pack_36,
1796     RE_Set_36                           => System_Pack_36,
1797     RE_SetU_36                          => System_Pack_36,
1798
1799     RE_Bits_37                          => System_Pack_37,
1800     RE_Get_37                           => System_Pack_37,
1801     RE_Set_37                           => System_Pack_37,
1802
1803     RE_Bits_38                          => System_Pack_38,
1804     RE_Get_38                           => System_Pack_38,
1805     RE_GetU_38                          => System_Pack_38,
1806     RE_Set_38                           => System_Pack_38,
1807     RE_SetU_38                          => System_Pack_38,
1808
1809     RE_Bits_39                          => System_Pack_39,
1810     RE_Get_39                           => System_Pack_39,
1811     RE_Set_39                           => System_Pack_39,
1812
1813     RE_Bits_40                          => System_Pack_40,
1814     RE_Get_40                           => System_Pack_40,
1815     RE_GetU_40                          => System_Pack_40,
1816     RE_Set_40                           => System_Pack_40,
1817     RE_SetU_40                          => System_Pack_40,
1818
1819     RE_Bits_41                          => System_Pack_41,
1820     RE_Get_41                           => System_Pack_41,
1821     RE_Set_41                           => System_Pack_41,
1822
1823     RE_Bits_42                          => System_Pack_42,
1824     RE_Get_42                           => System_Pack_42,
1825     RE_GetU_42                          => System_Pack_42,
1826     RE_Set_42                           => System_Pack_42,
1827     RE_SetU_42                          => System_Pack_42,
1828
1829     RE_Bits_43                          => System_Pack_43,
1830     RE_Get_43                           => System_Pack_43,
1831     RE_Set_43                           => System_Pack_43,
1832
1833     RE_Bits_44                          => System_Pack_44,
1834     RE_Get_44                           => System_Pack_44,
1835     RE_GetU_44                          => System_Pack_44,
1836     RE_Set_44                           => System_Pack_44,
1837     RE_SetU_44                          => System_Pack_44,
1838
1839     RE_Bits_45                          => System_Pack_45,
1840     RE_Get_45                           => System_Pack_45,
1841     RE_Set_45                           => System_Pack_45,
1842
1843     RE_Bits_46                          => System_Pack_46,
1844     RE_Get_46                           => System_Pack_46,
1845     RE_GetU_46                          => System_Pack_46,
1846     RE_Set_46                           => System_Pack_46,
1847     RE_SetU_46                          => System_Pack_46,
1848
1849     RE_Bits_47                          => System_Pack_47,
1850     RE_Get_47                           => System_Pack_47,
1851     RE_Set_47                           => System_Pack_47,
1852
1853     RE_Bits_48                          => System_Pack_48,
1854     RE_Get_48                           => System_Pack_48,
1855     RE_GetU_48                          => System_Pack_48,
1856     RE_Set_48                           => System_Pack_48,
1857     RE_SetU_48                          => System_Pack_48,
1858
1859     RE_Bits_49                          => System_Pack_49,
1860     RE_Get_49                           => System_Pack_49,
1861     RE_Set_49                           => System_Pack_49,
1862
1863     RE_Bits_50                          => System_Pack_50,
1864     RE_Get_50                           => System_Pack_50,
1865     RE_GetU_50                          => System_Pack_50,
1866     RE_Set_50                           => System_Pack_50,
1867     RE_SetU_50                          => System_Pack_50,
1868
1869     RE_Bits_51                          => System_Pack_51,
1870     RE_Get_51                           => System_Pack_51,
1871     RE_Set_51                           => System_Pack_51,
1872
1873     RE_Bits_52                          => System_Pack_52,
1874     RE_Get_52                           => System_Pack_52,
1875     RE_GetU_52                          => System_Pack_52,
1876     RE_Set_52                           => System_Pack_52,
1877     RE_SetU_52                          => System_Pack_52,
1878
1879     RE_Bits_53                          => System_Pack_53,
1880     RE_Get_53                           => System_Pack_53,
1881     RE_Set_53                           => System_Pack_53,
1882
1883     RE_Bits_54                          => System_Pack_54,
1884     RE_Get_54                           => System_Pack_54,
1885     RE_GetU_54                          => System_Pack_54,
1886     RE_Set_54                           => System_Pack_54,
1887     RE_SetU_54                          => System_Pack_54,
1888
1889     RE_Bits_55                          => System_Pack_55,
1890     RE_Get_55                           => System_Pack_55,
1891     RE_Set_55                           => System_Pack_55,
1892
1893     RE_Bits_56                          => System_Pack_56,
1894     RE_Get_56                           => System_Pack_56,
1895     RE_GetU_56                          => System_Pack_56,
1896     RE_Set_56                           => System_Pack_56,
1897     RE_SetU_56                          => System_Pack_56,
1898
1899     RE_Bits_57                          => System_Pack_57,
1900     RE_Get_57                           => System_Pack_57,
1901     RE_Set_57                           => System_Pack_57,
1902
1903     RE_Bits_58                          => System_Pack_58,
1904     RE_Get_58                           => System_Pack_58,
1905     RE_GetU_58                          => System_Pack_58,
1906     RE_Set_58                           => System_Pack_58,
1907     RE_SetU_58                          => System_Pack_58,
1908
1909     RE_Bits_59                          => System_Pack_59,
1910     RE_Get_59                           => System_Pack_59,
1911     RE_Set_59                           => System_Pack_59,
1912
1913     RE_Bits_60                          => System_Pack_60,
1914     RE_Get_60                           => System_Pack_60,
1915     RE_GetU_60                          => System_Pack_60,
1916     RE_Set_60                           => System_Pack_60,
1917     RE_SetU_60                          => System_Pack_60,
1918
1919     RE_Bits_61                          => System_Pack_61,
1920     RE_Get_61                           => System_Pack_61,
1921     RE_Set_61                           => System_Pack_61,
1922
1923     RE_Bits_62                          => System_Pack_62,
1924     RE_Get_62                           => System_Pack_62,
1925     RE_GetU_62                          => System_Pack_62,
1926     RE_Set_62                           => System_Pack_62,
1927     RE_SetU_62                          => System_Pack_62,
1928
1929     RE_Bits_63                          => System_Pack_63,
1930     RE_Get_63                           => System_Pack_63,
1931     RE_Set_63                           => System_Pack_63,
1932
1933     RE_Adjust_Storage_Size              => System_Parameters,
1934     RE_Default_Stack_Size               => System_Parameters,
1935     RE_Garbage_Collected                => System_Parameters,
1936     RE_Size_Type                        => System_Parameters,
1937     RE_Unspecified_Size                 => System_Parameters,
1938
1939     RE_Get_Active_Partition_Id          => System_Partition_Interface,
1940     RE_Get_Passive_Partition_Id         => System_Partition_Interface,
1941     RE_Get_Local_Partition_Id           => System_Partition_Interface,
1942     RE_Get_RCI_Package_Receiver         => System_Partition_Interface,
1943     RE_Get_Unique_Remote_Pointer        => System_Partition_Interface,
1944     RE_RACW_Stub_Type                   => System_Partition_Interface,
1945     RE_RACW_Stub_Type_Access            => System_Partition_Interface,
1946     RE_Raise_Program_Error_For_E_4_18   => System_Partition_Interface,
1947     RE_Raise_Program_Error_Unknown_Tag  => System_Partition_Interface,
1948     RE_Register_Passive_Package         => System_Partition_Interface,
1949     RE_Register_Receiving_Stub          => System_Partition_Interface,
1950     RE_RCI_Info                         => System_Partition_Interface,
1951     RE_Subprogram_Id                    => System_Partition_Interface,
1952
1953     RE_Global_Pool_Object               => System_Pool_Global,
1954
1955     RE_Unbounded_Reclaim_Pool           => System_Pool_Local,
1956
1957     RE_Stack_Bounded_Pool               => System_Pool_Size,
1958
1959     RE_Do_Apc                           => System_RPC,
1960     RE_Do_Rpc                           => System_RPC,
1961     RE_Params_Stream_Type               => System_RPC,
1962     RE_Partition_ID                     => System_RPC,
1963     RE_RPC_Receiver                     => System_RPC,
1964
1965     RE_IS_Is1                           => System_Scalar_Values,
1966     RE_IS_Is2                           => System_Scalar_Values,
1967     RE_IS_Is4                           => System_Scalar_Values,
1968     RE_IS_Is8                           => System_Scalar_Values,
1969     RE_IS_Iu1                           => System_Scalar_Values,
1970     RE_IS_Iu2                           => System_Scalar_Values,
1971     RE_IS_Iu4                           => System_Scalar_Values,
1972     RE_IS_Iu8                           => System_Scalar_Values,
1973     RE_IS_Isf                           => System_Scalar_Values,
1974     RE_IS_Ifl                           => System_Scalar_Values,
1975     RE_IS_Ilf                           => System_Scalar_Values,
1976     RE_IS_Ill                           => System_Scalar_Values,
1977
1978     RE_Default_Secondary_Stack_Size     => System_Secondary_Stack,
1979     RE_Mark_Id                          => System_Secondary_Stack,
1980     RE_SS_Allocate                      => System_Secondary_Stack,
1981     RE_SS_Mark                          => System_Secondary_Stack,
1982     RE_SS_Pool                          => System_Secondary_Stack,
1983     RE_SS_Release                       => System_Secondary_Stack,
1984
1985     RE_Shared_Var_Close                 => System_Shared_Storage,
1986     RE_Shared_Var_Lock                  => System_Shared_Storage,
1987     RE_Shared_Var_ROpen                 => System_Shared_Storage,
1988     RE_Shared_Var_Unlock                => System_Shared_Storage,
1989     RE_Shared_Var_WOpen                 => System_Shared_Storage,
1990
1991     RE_Abort_Undefer_Direct             => System_Standard_Library,
1992     RE_Exception_Data_Ptr               => System_Standard_Library,
1993
1994     RE_Integer_Address                  => System_Storage_Elements,
1995     RE_Storage_Offset                   => System_Storage_Elements,
1996     RE_Storage_Array                    => System_Storage_Elements,
1997     RE_To_Address                       => System_Storage_Elements,
1998
1999     RE_Root_Storage_Pool                => System_Storage_Pools,
2000     RE_Allocate_Any                     => System_Storage_Pools,
2001     RE_Deallocate_Any                   => System_Storage_Pools,
2002
2003     RE_Thin_Pointer                     => System_Stream_Attributes,
2004     RE_Fat_Pointer                      => System_Stream_Attributes,
2005
2006     RE_I_AD                             => System_Stream_Attributes,
2007     RE_I_AS                             => System_Stream_Attributes,
2008     RE_I_B                              => System_Stream_Attributes,
2009     RE_I_C                              => System_Stream_Attributes,
2010     RE_I_F                              => System_Stream_Attributes,
2011     RE_I_I                              => System_Stream_Attributes,
2012     RE_I_LF                             => System_Stream_Attributes,
2013     RE_I_LI                             => System_Stream_Attributes,
2014     RE_I_LLF                            => System_Stream_Attributes,
2015     RE_I_LLI                            => System_Stream_Attributes,
2016     RE_I_LLU                            => System_Stream_Attributes,
2017     RE_I_LU                             => System_Stream_Attributes,
2018     RE_I_SF                             => System_Stream_Attributes,
2019     RE_I_SI                             => System_Stream_Attributes,
2020     RE_I_SSI                            => System_Stream_Attributes,
2021     RE_I_SSU                            => System_Stream_Attributes,
2022     RE_I_SU                             => System_Stream_Attributes,
2023     RE_I_U                              => System_Stream_Attributes,
2024     RE_I_WC                             => System_Stream_Attributes,
2025
2026     RE_W_AD                             => System_Stream_Attributes,
2027     RE_W_AS                             => System_Stream_Attributes,
2028     RE_W_B                              => System_Stream_Attributes,
2029     RE_W_C                              => System_Stream_Attributes,
2030     RE_W_F                              => System_Stream_Attributes,
2031     RE_W_I                              => System_Stream_Attributes,
2032     RE_W_LF                             => System_Stream_Attributes,
2033     RE_W_LI                             => System_Stream_Attributes,
2034     RE_W_LLF                            => System_Stream_Attributes,
2035     RE_W_LLI                            => System_Stream_Attributes,
2036     RE_W_LLU                            => System_Stream_Attributes,
2037     RE_W_LU                             => System_Stream_Attributes,
2038     RE_W_SF                             => System_Stream_Attributes,
2039     RE_W_SI                             => System_Stream_Attributes,
2040     RE_W_SSI                            => System_Stream_Attributes,
2041     RE_W_SSU                            => System_Stream_Attributes,
2042     RE_W_SU                             => System_Stream_Attributes,
2043     RE_W_U                              => System_Stream_Attributes,
2044     RE_W_WC                             => System_Stream_Attributes,
2045
2046     RE_Block_Stream_Ops_OK              => System_Stream_Attributes,
2047
2048     RE_Str_Concat                       => System_String_Ops,
2049     RE_Str_Normalize                    => System_String_Ops,
2050     RE_Wide_Str_Normalize               => System_String_Ops,
2051     RE_Str_Concat_CC                    => System_String_Ops,
2052     RE_Str_Concat_CS                    => System_String_Ops,
2053     RE_Str_Concat_SC                    => System_String_Ops,
2054
2055     RE_Str_Concat_3                     => System_String_Ops_Concat_3,
2056
2057     RE_Str_Concat_4                     => System_String_Ops_Concat_4,
2058
2059     RE_Str_Concat_5                     => System_String_Ops_Concat_5,
2060
2061     RE_Task_Info_Type                   => System_Task_Info,
2062     RE_Unspecified_Task_Info            => System_Task_Info,
2063
2064     RE_Library_Task_Level               => System_Tasking,
2065
2066     RE_Task_Procedure_Access            => System_Tasking,
2067
2068     RO_ST_Task_ID                       => System_Tasking,
2069
2070     RE_Call_Modes                       => System_Tasking,
2071     RE_Simple_Call                      => System_Tasking,
2072     RE_Conditional_Call                 => System_Tasking,
2073     RE_Asynchronous_Call                => System_Tasking,
2074     RE_Timed_Call                       => System_Tasking,
2075
2076     RE_Task_List                        => System_Tasking,
2077
2078     RE_Accept_Alternative               => System_Tasking,
2079     RE_Accept_List                      => System_Tasking,
2080     RE_Accept_List_Access               => System_Tasking,
2081     RE_Max_Select                       => System_Tasking,
2082     RE_Max_Task_Entry                   => System_Tasking,
2083     RE_No_Rendezvous                    => System_Tasking,
2084     RE_Null_Task_Entry                  => System_Tasking,
2085     RE_Positive_Select_Index            => System_Tasking,
2086     RE_Select_Index                     => System_Tasking,
2087     RE_Select_Modes                     => System_Tasking,
2088     RE_Else_Mode                        => System_Tasking,
2089     RE_Simple_Mode                      => System_Tasking,
2090     RE_Terminate_Mode                   => System_Tasking,
2091     RE_Delay_Mode                       => System_Tasking,
2092     RE_Task_Entry_Index                 => System_Tasking,
2093     RE_Self                             => System_Tasking,
2094
2095     RE_Master_Id                        => System_Tasking,
2096     RE_Unspecified_Priority             => System_Tasking,
2097
2098     RE_Activation_Chain                 => System_Tasking,
2099
2100     RE_Abort_Defer                      => System_Soft_Links,
2101     RE_Abort_Undefer                    => System_Soft_Links,
2102     RE_Complete_Master                  => System_Soft_Links,
2103     RE_Current_Master                   => System_Soft_Links,
2104     RE_Enter_Master                     => System_Soft_Links,
2105     RE_Get_Current_Excep                => System_Soft_Links,
2106     RE_Get_GNAT_Exception               => System_Soft_Links,
2107     RE_Update_Exception                 => System_Soft_Links,
2108
2109     RE_ATSD                             => System_Threads,
2110     RE_Thread_Body_Enter                => System_Threads,
2111     RE_Thread_Body_Exceptional_Exit     => System_Threads,
2112     RE_Thread_Body_Leave                => System_Threads,
2113
2114     RE_Bits_1                           => System_Unsigned_Types,
2115     RE_Bits_2                           => System_Unsigned_Types,
2116     RE_Bits_4                           => System_Unsigned_Types,
2117     RE_Float_Unsigned                   => System_Unsigned_Types,
2118     RE_Long_Unsigned                    => System_Unsigned_Types,
2119     RE_Long_Long_Unsigned               => System_Unsigned_Types,
2120     RE_Packed_Byte                      => System_Unsigned_Types,
2121     RE_Packed_Bytes1                    => System_Unsigned_Types,
2122     RE_Packed_Bytes2                    => System_Unsigned_Types,
2123     RE_Packed_Bytes4                    => System_Unsigned_Types,
2124     RE_Short_Unsigned                   => System_Unsigned_Types,
2125     RE_Short_Short_Unsigned             => System_Unsigned_Types,
2126     RE_Unsigned                         => System_Unsigned_Types,
2127
2128     RE_Value_Boolean                    => System_Val_Bool,
2129
2130     RE_Value_Character                  => System_Val_Char,
2131
2132     RE_Value_Decimal                    => System_Val_Dec,
2133
2134     RE_Value_Enumeration_8              => System_Val_Enum,
2135     RE_Value_Enumeration_16             => System_Val_Enum,
2136     RE_Value_Enumeration_32             => System_Val_Enum,
2137
2138     RE_Value_Integer                    => System_Val_Int,
2139
2140     RE_Value_Long_Long_Decimal          => System_Val_LLD,
2141
2142     RE_Value_Long_Long_Integer          => System_Val_LLI,
2143
2144     RE_Value_Long_Long_Unsigned         => System_Val_LLU,
2145
2146     RE_Value_Real                       => System_Val_Real,
2147
2148     RE_Value_Unsigned                   => System_Val_Uns,
2149
2150     RE_Value_Wide_Character             => System_Val_WChar,
2151
2152     RE_D                                => System_Vax_Float_Operations,
2153     RE_F                                => System_Vax_Float_Operations,
2154     RE_G                                => System_Vax_Float_Operations,
2155     RE_Q                                => System_Vax_Float_Operations,
2156     RE_S                                => System_Vax_Float_Operations,
2157     RE_T                                => System_Vax_Float_Operations,
2158
2159     RE_D_To_G                           => System_Vax_Float_Operations,
2160     RE_F_To_G                           => System_Vax_Float_Operations,
2161     RE_F_To_Q                           => System_Vax_Float_Operations,
2162     RE_F_To_S                           => System_Vax_Float_Operations,
2163     RE_G_To_D                           => System_Vax_Float_Operations,
2164     RE_G_To_F                           => System_Vax_Float_Operations,
2165     RE_G_To_Q                           => System_Vax_Float_Operations,
2166     RE_G_To_T                           => System_Vax_Float_Operations,
2167     RE_Q_To_F                           => System_Vax_Float_Operations,
2168     RE_Q_To_G                           => System_Vax_Float_Operations,
2169     RE_S_To_F                           => System_Vax_Float_Operations,
2170     RE_T_To_D                           => System_Vax_Float_Operations,
2171     RE_T_To_G                           => System_Vax_Float_Operations,
2172
2173     RE_Abs_F                            => System_Vax_Float_Operations,
2174     RE_Abs_G                            => System_Vax_Float_Operations,
2175     RE_Add_F                            => System_Vax_Float_Operations,
2176     RE_Add_G                            => System_Vax_Float_Operations,
2177     RE_Div_F                            => System_Vax_Float_Operations,
2178     RE_Div_G                            => System_Vax_Float_Operations,
2179     RE_Mul_F                            => System_Vax_Float_Operations,
2180     RE_Mul_G                            => System_Vax_Float_Operations,
2181     RE_Neg_F                            => System_Vax_Float_Operations,
2182     RE_Neg_G                            => System_Vax_Float_Operations,
2183     RE_Sub_F                            => System_Vax_Float_Operations,
2184     RE_Sub_G                            => System_Vax_Float_Operations,
2185
2186     RE_Eq_F                             => System_Vax_Float_Operations,
2187     RE_Eq_G                             => System_Vax_Float_Operations,
2188     RE_Le_F                             => System_Vax_Float_Operations,
2189     RE_Le_G                             => System_Vax_Float_Operations,
2190     RE_Lt_F                             => System_Vax_Float_Operations,
2191     RE_Lt_G                             => System_Vax_Float_Operations,
2192
2193     RE_Version_String                   => System_Version_Control,
2194     RE_Get_Version_String               => System_Version_Control,
2195
2196     RE_Register_VMS_Exception           => System_VMS_Exception_Table,
2197
2198     RE_String_To_Wide_String            => System_WCh_StW,
2199
2200     RE_Wide_String_To_String            => System_WCh_WtS,
2201
2202     RE_Wide_Width_Character             => System_WWd_Char,
2203
2204     RE_Wide_Width_Enumeration_8         => System_WWd_Enum,
2205     RE_Wide_Width_Enumeration_16        => System_WWd_Enum,
2206     RE_Wide_Width_Enumeration_32        => System_WWd_Enum,
2207
2208     RE_Wide_Width_Wide_Character        => System_WWd_Wchar,
2209
2210     RE_Width_Boolean                    => System_Wid_Bool,
2211
2212     RE_Width_Character                  => System_Wid_Char,
2213
2214     RE_Width_Enumeration_8              => System_Wid_Enum,
2215     RE_Width_Enumeration_16             => System_Wid_Enum,
2216     RE_Width_Enumeration_32             => System_Wid_Enum,
2217
2218     RE_Width_Long_Long_Integer          => System_Wid_LLI,
2219
2220     RE_Width_Long_Long_Unsigned         => System_Wid_LLU,
2221
2222     RE_Width_Wide_Character             => System_Wid_WChar,
2223
2224     RE_Protected_Entry_Body_Array       =>
2225       System_Tasking_Protected_Objects_Entries,
2226     RE_Protection_Entries               =>
2227       System_Tasking_Protected_Objects_Entries,
2228     RE_Initialize_Protection_Entries    =>
2229       System_Tasking_Protected_Objects_Entries,
2230     RE_Lock_Entries                     =>
2231       System_Tasking_Protected_Objects_Entries,
2232     RE_Lock_Read_Only_Entries           =>
2233       System_Tasking_Protected_Objects_Entries,
2234     RE_Unlock_Entries                   =>
2235       System_Tasking_Protected_Objects_Entries,
2236     RE_Communication_Block              =>
2237       System_Tasking_Protected_Objects_Operations,
2238     RE_Protected_Entry_Call             =>
2239       System_Tasking_Protected_Objects_Operations,
2240     RE_Service_Entries                  =>
2241       System_Tasking_Protected_Objects_Operations,
2242     RE_Cancel_Protected_Entry_Call      =>
2243       System_Tasking_Protected_Objects_Operations,
2244     RE_Enqueued                         =>
2245       System_Tasking_Protected_Objects_Operations,
2246     RE_Cancelled                        =>
2247       System_Tasking_Protected_Objects_Operations,
2248     RE_Complete_Entry_Body              =>
2249       System_Tasking_Protected_Objects_Operations,
2250     RE_Exceptional_Complete_Entry_Body  =>
2251       System_Tasking_Protected_Objects_Operations,
2252     RE_Requeue_Protected_Entry          =>
2253       System_Tasking_Protected_Objects_Operations,
2254     RE_Requeue_Task_To_Protected_Entry  =>
2255       System_Tasking_Protected_Objects_Operations,
2256     RE_Protected_Count                  =>
2257       System_Tasking_Protected_Objects_Operations,
2258     RE_Protected_Entry_Caller           =>
2259       System_Tasking_Protected_Objects_Operations,
2260     RE_Timed_Protected_Entry_Call       =>
2261       System_Tasking_Protected_Objects_Operations,
2262
2263     RE_Protection_Entry                 =>
2264       System_Tasking_Protected_Objects_Single_Entry,
2265     RE_Initialize_Protection_Entry      =>
2266       System_Tasking_Protected_Objects_Single_Entry,
2267     RE_Lock_Entry                       =>
2268       System_Tasking_Protected_Objects_Single_Entry,
2269     RE_Lock_Read_Only_Entry             =>
2270       System_Tasking_Protected_Objects_Single_Entry,
2271     RE_Unlock_Entry                     =>
2272       System_Tasking_Protected_Objects_Single_Entry,
2273     RE_Protected_Single_Entry_Call      =>
2274       System_Tasking_Protected_Objects_Single_Entry,
2275     RE_Service_Entry                    =>
2276       System_Tasking_Protected_Objects_Single_Entry,
2277     RE_Complete_Single_Entry_Body       =>
2278       System_Tasking_Protected_Objects_Single_Entry,
2279     RE_Exceptional_Complete_Single_Entry_Body =>
2280       System_Tasking_Protected_Objects_Single_Entry,
2281     RE_Protected_Count_Entry            =>
2282       System_Tasking_Protected_Objects_Single_Entry,
2283     RE_Protected_Single_Entry_Caller    =>
2284       System_Tasking_Protected_Objects_Single_Entry,
2285     RE_Timed_Protected_Single_Entry_Call =>
2286       System_Tasking_Protected_Objects_Single_Entry,
2287
2288     RE_Protected_Entry_Index            => System_Tasking_Protected_Objects,
2289     RE_Entry_Body                       => System_Tasking_Protected_Objects,
2290     RE_Protection                       => System_Tasking_Protected_Objects,
2291     RE_Initialize_Protection            => System_Tasking_Protected_Objects,
2292     RE_Finalize_Protection              => System_Tasking_Protected_Objects,
2293     RE_Lock                             => System_Tasking_Protected_Objects,
2294     RE_Lock_Read_Only                   => System_Tasking_Protected_Objects,
2295     RE_Unlock                           => System_Tasking_Protected_Objects,
2296
2297     RE_Delay_Block                      => System_Tasking_Async_Delays,
2298     RE_Timed_Out                        => System_Tasking_Async_Delays,
2299     RE_Cancel_Async_Delay               => System_Tasking_Async_Delays,
2300     RE_Enqueue_Duration                 => System_Tasking_Async_Delays,
2301
2302     RE_Enqueue_Calendar                 =>
2303       System_Tasking_Async_Delays_Enqueue_Calendar,
2304     RE_Enqueue_RT                       =>
2305       System_Tasking_Async_Delays_Enqueue_RT,
2306
2307     RE_Accept_Call                      => System_Tasking_Rendezvous,
2308     RE_Accept_Trivial                   => System_Tasking_Rendezvous,
2309     RE_Callable                         => System_Tasking_Rendezvous,
2310     RE_Call_Simple                      => System_Tasking_Rendezvous,
2311     RE_Cancel_Task_Entry_Call           => System_Tasking_Rendezvous,
2312     RE_Requeue_Task_Entry               => System_Tasking_Rendezvous,
2313     RE_Requeue_Protected_To_Task_Entry  => System_Tasking_Rendezvous,
2314     RE_Complete_Rendezvous              => System_Tasking_Rendezvous,
2315     RE_Task_Count                       => System_Tasking_Rendezvous,
2316     RE_Exceptional_Complete_Rendezvous  => System_Tasking_Rendezvous,
2317     RE_Selective_Wait                   => System_Tasking_Rendezvous,
2318     RE_Task_Entry_Call                  => System_Tasking_Rendezvous,
2319     RE_Task_Entry_Caller                => System_Tasking_Rendezvous,
2320     RE_Timed_Task_Entry_Call            => System_Tasking_Rendezvous,
2321     RE_Timed_Selective_Wait             => System_Tasking_Rendezvous,
2322
2323     RE_Activate_Restricted_Tasks        => System_Tasking_Restricted_Stages,
2324     RE_Complete_Restricted_Activation   => System_Tasking_Restricted_Stages,
2325     RE_Create_Restricted_Task           => System_Tasking_Restricted_Stages,
2326     RE_Complete_Restricted_Task         => System_Tasking_Restricted_Stages,
2327     RE_Restricted_Terminated            => System_Tasking_Restricted_Stages,
2328
2329     RE_Abort_Tasks                      => System_Tasking_Stages,
2330     RE_Activate_Tasks                   => System_Tasking_Stages,
2331     RE_Complete_Activation              => System_Tasking_Stages,
2332     RE_Create_Task                      => System_Tasking_Stages,
2333     RE_Complete_Task                    => System_Tasking_Stages,
2334     RE_Free_Task                        => System_Tasking_Stages,
2335     RE_Expunge_Unactivated_Tasks        => System_Tasking_Stages,
2336     RE_Terminated                       => System_Tasking_Stages);
2337
2338   --------------------------------
2339   -- Configurable Run-Time Mode --
2340   --------------------------------
2341
2342   --  Part of the job of Rtsfind is to enforce run-time restrictions in
2343   --  configurable run-time mode. This is done by monitoring implicit access
2344   --  to the run time library requested by calls to the RTE function. A call
2345   --  may be invalid in configurable run-time mode for either of the
2346   --  following two reasons:
2347
2348   --     1. File in which entity lives is not present in run-time library
2349   --     2. File is present, but entity is not defined in the file
2350
2351   --  In normal mode, either or these two situations is a fatal error
2352   --  that indicates that the run-time library is incorrectly configured,
2353   --  and a fatal error message is issued to signal this error.
2354
2355   --  In configurable run-time mode, either of these two situations indicates
2356   --  simply that the corresponding operation is not available in the current
2357   --  run-time that is use. This is not a configuration error, but rather a
2358   --  natural result of a limited run-time. This situation is signalled by
2359   --  raising the exception RE_Not_Available. The caller must respond to
2360   --  this exception by posting an appropriate error message.
2361
2362   ----------------------
2363   -- No_Run_Time_Mode --
2364   ----------------------
2365
2366   --  For backwards compatibility with previous versions of GNAT, the
2367   --  compiler recognizes the pragma No_Run_Time. This provides a special
2368   --  version of configurable run-time mode that operates with the standard
2369   --  run-time library, but allows only a subset of entities to be
2370   --  accessed. If any other entity is accessed, then it is treated
2371   --  as a configurable run-time violation, and the exception
2372   --  RE_Not_Availble is raised.
2373
2374   --  The following array defines the set of units that contain entities
2375   --  that can be referenced in No_Run_Time mode. For each of these units,
2376   --  all entities defined in the unit can be used in this mode.
2377
2378   OK_No_Run_Time_Unit : constant array (RTU_Id) of Boolean :=
2379     (Ada_Exceptions          => True,
2380      Ada_Tags                => True,
2381      Interfaces              => True,
2382      System                  => True,
2383      System_Parameters       => True,
2384      System_Fat_Flt          => True,
2385      System_Fat_LFlt         => True,
2386      System_Fat_LLF          => True,
2387      System_Fat_SFlt         => True,
2388      System_Machine_Code     => True,
2389      System_Secondary_Stack  => True,
2390      System_Storage_Elements => True,
2391      System_Task_Info        => True,
2392      System_Unsigned_Types   => True,
2393      others                  => False);
2394
2395   -----------------
2396   -- Subprograms --
2397   -----------------
2398
2399   procedure Initialize;
2400   --  Procedure to initialize data structures used by RTE. Called at the
2401   --  start of processing a new main source file. Must be called after
2402   --  Initialize_Snames (since names it enters into name table must come
2403   --  after names entered by Snames).
2404
2405   RE_Not_Available : exception;
2406   --  Raised by RTE if the requested entity is not available. This can
2407   --  occur either because the file in which the entity should be found
2408   --  does not exist, or because the entity is not present in the file.
2409
2410   function RTE (E : RE_Id) return Entity_Id;
2411   --  Given the entity defined in the above tables, as identified by the
2412   --  corresponding value in the RE_Id enumeration type, returns the Id
2413   --  of the corresponding entity, first loading in (parsing, analyzing and
2414   --  expanding) its spec if the unit has not already been loaded.
2415   --
2416   --  Note: In the case of a package, RTE can return either an entity that
2417   --  is declared at the top level of the package, or the package entity
2418   --  itself. If an entity within the package has the same simple name as
2419   --  the package, then the entity within the package is returned rather
2420   --
2421   --  If RTE returns, the returned value is the required entity
2422   --
2423   --  If the entity is not available, then an error message is given The
2424   --  form of the message depends on whether we are in configurable run time
2425   --  mode or not. In configurable run time mode, a missing entity is not
2426   --  that surprising and merely says that the particular construct is not
2427   --  supported by the run-time in use. If we are not in configurable run
2428   --  time mode, a missing entity is some kind of run-time configuration
2429   --  error. In either case, the result of the call is to raise the exception
2430   --  RE_Not_Available, which should terminate the expansion of the current
2431   --  construct.
2432
2433   function Is_RTE (Ent : Entity_Id; E : RE_Id) return Boolean;
2434   --  This function determines if the given entity corresponds to the entity
2435   --  referenced by RE_Id. It is similar in effect to (Ent = RTE (E)) except
2436   --  that the latter would unconditionally load the unit containing E. For
2437   --  this call, if the unit is not loaded, then a result of False is returned
2438   --  immediately, since obviously Ent cannot be the entity in question if the
2439   --  corresponding unit has not been loaded.
2440
2441   function Is_RTU (Ent : Entity_Id;  U : RTU_Id) return Boolean;
2442   pragma Inline (Is_RTU);
2443   --  This function determines if the given entity corresponds to the entity
2444   --  for the unit referenced by U. If this unit has not been loaded, the
2445   --  answer will always be False. If the unit has been loaded, then the
2446   --  entity id values are compared and True is returned if Ent is the
2447   --  entity for this unit.
2448
2449   function RTE_Available (E : RE_Id) return Boolean;
2450   --  Returns true if a call to RTE will succeed without raising an
2451   --  exception and without generating an error message, i.e. if the
2452   --  call will obtain the desired entity without any problems.
2453
2454   procedure Text_IO_Kludge (Nam : Node_Id);
2455   --  In Ada 83, and hence for compatibility in Ada 9X, package Text_IO has
2456   --  generic subpackages (e.g. Integer_IO). They really should be child
2457   --  packages, and in GNAT, they *are* child packages. To maintain the
2458   --  required compatibility, this routine is called for package renamings
2459   --  and generic instantiations, with the simple name of the referenced
2460   --  package. If Text_IO has been with'ed and if the simple name of Nam
2461   --  matches one of the subpackages of Text_IO, then this subpackage is
2462   --  with'ed automatically. The important result of this approach is that
2463   --  Text_IO does not drag in all the code for the subpackages unless they
2464   --  are used. Our test is a little crude, and could drag in stuff when it
2465   --  is not necessary, but that doesn't matter. Wide_Text_IO is handled in
2466   --  a similar manner.
2467
2468   function Is_Text_IO_Kludge_Unit (Nam : Node_Id) return Boolean;
2469   --  Returns True if the given Nam is an Expanded Name, whose Prefix is
2470   --  Ada, and whose selector is either Text_IO.xxx or Wide_Text_IO.xxx
2471   --  where xxx is one of the subpackages of Text_IO that is specially
2472   --  handled as described above for Text_IO_Kludge.
2473
2474end Rtsfind;
2475