diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-09-12 11:58:21 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-09-12 11:58:21 +0000 |
commit | 2a2c0bdac62b278a51855eaba00e794fddcc7315 (patch) | |
tree | 1bbb4e1fc471c620be19561631117b939eabe87f | |
parent | fe507ab1c4addbdb025a1a37a5b23c72122bf1c2 (diff) | |
download | gcc-2a2c0bdac62b278a51855eaba00e794fddcc7315.tar.gz |
2007-09-12 Robert Dewar <dewar@adacore.com>
* types.ads, a-charac.ads, freeze.adb: Minor reformatting.
* a-except.adb, g-hesora.adb, g-speche.adb, lib.adb, lib.ads,
lib-load.adb, lib-writ.adb, s-assert.adb, s-carun8.adb,
s-casuti.adb, s-crc32.adb, s-exctab.adb, s-htable.adb, s-imgenu.adb,
s-mastop.adb, s-memory.adb, s-memory.ads, s-secsta.adb, s-soflin.adb,
s-sopco3.adb, s-sopco4.adb, s-sopco5.adb, s-stache.adb, s-stalib.adb,
s-stoele.adb, s-strcom.adb, s-strops.adb, s-traceb.adb, s-traent.adb,
s-wchcnv.adb, s-wchcon.adb, s-wchjis.adb, s-addope.adb, s-except.adb,
s-os_lib.adb, s-string.adb, s-utf_32.adb,
a-chlat1.ads, a-elchha.ads, a-except.ads, g-hesora.ads, g-htable.ads,
g-speche.ads, par-prag.adb, restrict.adb, restrict.ads, s-assert.ads,
s-carun8.ads, s-casuti.ads, s-crc32.ads, sem_ch11.adb, sem_prag.adb,
s-exctab.ads, s-htable.ads, s-imgenu.ads, s-mastop.ads, snames.adb,
snames.ads, snames.h, s-purexc.ads, s-secsta.ads, s-soflin.ads,
s-sopco3.ads, s-sopco4.ads, s-sopco5.ads, s-stache.ads, s-stalib.ads,
s-stoele.ads, s-strcom.ads, s-strops.ads, s-traceb.ads, s-traent.ads,
s-unstyp.ads, s-wchcnv.ads, s-wchcon.ads, s-wchjis.ads, s-addope.ads,
s-except.ads, s-os_lib.ads, s-string.ads, s-utf_32.ads: Implement
pragma Compiler_Unit and adds it to relevant library units.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128426 138bc75d-0d04-0410-961f-82ee72b054a4
83 files changed, 1269 insertions, 940 deletions
diff --git a/gcc/ada/a-charac.ads b/gcc/ada/a-charac.ads index 30af8b812e1..8355f54184a 100644 --- a/gcc/ada/a-charac.ads +++ b/gcc/ada/a-charac.ads @@ -15,5 +15,4 @@ package Ada.Characters is pragma Pure; - end Ada.Characters; diff --git a/gcc/ada/a-chlat1.ads b/gcc/ada/a-chlat1.ads index f0a9006bd2c..056c881a923 100644 --- a/gcc/ada/a-chlat1.ads +++ b/gcc/ada/a-chlat1.ads @@ -13,6 +13,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package Ada.Characters.Latin_1 is pragma Pure; diff --git a/gcc/ada/a-elchha.ads b/gcc/ada/a-elchha.ads index bbd68b45063..87287f00372 100644 --- a/gcc/ada/a-elchha.ads +++ b/gcc/ada/a-elchha.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 2003-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 2003-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -33,6 +33,10 @@ -- Last chance handler. Unhandled exceptions are passed to this routine +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + procedure Ada.Exceptions.Last_Chance_Handler (Except : Exception_Occurrence); pragma Export (C, diff --git a/gcc/ada/a-except.adb b/gcc/ada/a-except.adb index 0048622473d..5eae60f0e3c 100644 --- a/gcc/ada/a-except.adb +++ b/gcc/ada/a-except.adb @@ -42,6 +42,10 @@ -- 2005 functionality is required. in particular, it is used for building -- run times on all targets. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + pragma Style_Checks (All_Checks); -- No subprogram ordering check, due to logical grouping diff --git a/gcc/ada/a-except.ads b/gcc/ada/a-except.ads index a5c77af03c8..40e3697f4b0 100644 --- a/gcc/ada/a-except.ads +++ b/gcc/ada/a-except.ads @@ -50,6 +50,10 @@ pragma Polling (Off); -- We must turn polling off for this unit, because otherwise we get -- elaboration circularities with ourself. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with System; with System.Parameters; with System.Standard_Library; diff --git a/gcc/ada/freeze.adb b/gcc/ada/freeze.adb index 787363898f5..26e03185bf6 100644 --- a/gcc/ada/freeze.adb +++ b/gcc/ada/freeze.adb @@ -1484,14 +1484,11 @@ package body Freeze is Inner : Node_Id; begin Inner := N; - loop if Nkind (Inner) = N_Allocator then return Inner; - elsif Nkind (Inner) = N_Qualified_Expression then Inner := Expression (Inner); - else return Empty; end if; diff --git a/gcc/ada/g-hesora.adb b/gcc/ada/g-hesora.adb index 438bd712750..73cdcaaa1fa 100644 --- a/gcc/ada/g-hesora.adb +++ b/gcc/ada/g-hesora.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1995-2005, AdaCore -- +-- Copyright (C) 1995-2007, AdaCore -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package body GNAT.Heap_Sort_A is ---------- diff --git a/gcc/ada/g-hesora.ads b/gcc/ada/g-hesora.ads index e5f96889983..bf60cafd9ef 100644 --- a/gcc/ada/g-hesora.ads +++ b/gcc/ada/g-hesora.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1995-2005, AdaCore -- +-- Copyright (C) 1995-2007, AdaCore -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -42,6 +42,10 @@ -- worst case and is in place with no additional storage required. See -- the body for exact details of the algorithm used. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package GNAT.Heap_Sort_A is pragma Preelaborate; diff --git a/gcc/ada/g-htable.ads b/gcc/ada/g-htable.ads index ef28bc5d675..b852cce396a 100644 --- a/gcc/ada/g-htable.ads +++ b/gcc/ada/g-htable.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1995-2005, AdaCore -- +-- Copyright (C) 1995-2007, AdaCore -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -43,6 +43,10 @@ -- this facility is accessed from run time routines, but clients should -- always access the version supplied via GNAT.HTable. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with System.HTable; package GNAT.HTable is diff --git a/gcc/ada/g-speche.adb b/gcc/ada/g-speche.adb index 9d00bc5e099..72c0abcfacc 100644 --- a/gcc/ada/g-speche.adb +++ b/gcc/ada/g-speche.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1998-2006, AdaCore -- +-- Copyright (C) 1998-2007, AdaCore -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package body GNAT.Spelling_Checker is ------------------------ diff --git a/gcc/ada/g-speche.ads b/gcc/ada/g-speche.ads index ab3daeaecd5..8b039e8491a 100644 --- a/gcc/ada/g-speche.ads +++ b/gcc/ada/g-speche.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1998-2006, AdaCore -- +-- Copyright (C) 1998-2007, AdaCore -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -35,6 +35,10 @@ -- This package provides a utility routine for checking for bad spellings +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package GNAT.Spelling_Checker is pragma Pure; diff --git a/gcc/ada/lib-load.adb b/gcc/ada/lib-load.adb index 843ddbd2b2f..f439926b4cb 100644 --- a/gcc/ada/lib-load.adb +++ b/gcc/ada/lib-load.adb @@ -206,24 +206,25 @@ package body Lib.Load is Unum := Units.Last; Units.Table (Unum) := ( - Cunit => Cunit, - Cunit_Entity => Cunit_Entity, - Dependency_Num => 0, - Dynamic_Elab => False, - Error_Location => Sloc (With_Node), - Expected_Unit => Spec_Name, - Fatal_Error => True, - Generate_Code => False, - Has_RACW => False, - Ident_String => Empty, - Loading => False, - Main_Priority => Default_Main_Priority, - Munit_Index => 0, - Serial_Number => 0, - Source_Index => No_Source_File, - Unit_File_Name => Get_File_Name (Spec_Name, Subunit => False), - Unit_Name => Spec_Name, - Version => 0); + Cunit => Cunit, + Cunit_Entity => Cunit_Entity, + Dependency_Num => 0, + Dynamic_Elab => False, + Error_Location => Sloc (With_Node), + Expected_Unit => Spec_Name, + Fatal_Error => True, + Generate_Code => False, + Has_RACW => False, + Is_Compiler_Unit => False, + Ident_String => Empty, + Loading => False, + Main_Priority => Default_Main_Priority, + Munit_Index => 0, + Serial_Number => 0, + Source_Index => No_Source_File, + Unit_File_Name => Get_File_Name (Spec_Name, Subunit => False), + Unit_Name => Spec_Name, + Version => 0); Set_Comes_From_Source_Default (Save_CS); Set_Error_Posted (Cunit_Entity); @@ -308,24 +309,25 @@ package body Lib.Load is end if; Units.Table (Main_Unit) := ( - Cunit => Empty, - Cunit_Entity => Empty, - Dependency_Num => 0, - Dynamic_Elab => False, - Error_Location => No_Location, - Expected_Unit => No_Unit_Name, - Fatal_Error => False, - Generate_Code => False, - Has_RACW => False, - Ident_String => Empty, - Loading => True, - Main_Priority => Default_Main_Priority, - Munit_Index => 0, - Serial_Number => 0, - Source_Index => Main_Source_File, - Unit_File_Name => Fname, - Unit_Name => No_Unit_Name, - Version => Version); + Cunit => Empty, + Cunit_Entity => Empty, + Dependency_Num => 0, + Dynamic_Elab => False, + Error_Location => No_Location, + Expected_Unit => No_Unit_Name, + Fatal_Error => False, + Generate_Code => False, + Has_RACW => False, + Is_Compiler_Unit => False, + Ident_String => Empty, + Loading => True, + Main_Priority => Default_Main_Priority, + Munit_Index => 0, + Serial_Number => 0, + Source_Index => Main_Source_File, + Unit_File_Name => Fname, + Unit_Name => No_Unit_Name, + Version => Version); end if; end Load_Main_Source; @@ -627,24 +629,25 @@ package body Lib.Load is if Src_Ind /= No_Source_File then Units.Table (Unum) := ( - Cunit => Empty, - Cunit_Entity => Empty, - Dependency_Num => 0, - Dynamic_Elab => False, - Error_Location => Sloc (Error_Node), - Expected_Unit => Uname_Actual, - Fatal_Error => False, - Generate_Code => False, - Has_RACW => False, - Ident_String => Empty, - Loading => True, - Main_Priority => Default_Main_Priority, - Munit_Index => 0, - Serial_Number => 0, - Source_Index => Src_Ind, - Unit_File_Name => Fname, - Unit_Name => Uname_Actual, - Version => Source_Checksum (Src_Ind)); + Cunit => Empty, + Cunit_Entity => Empty, + Dependency_Num => 0, + Dynamic_Elab => False, + Error_Location => Sloc (Error_Node), + Expected_Unit => Uname_Actual, + Fatal_Error => False, + Generate_Code => False, + Has_RACW => False, + Is_Compiler_Unit => False, + Ident_String => Empty, + Loading => True, + Main_Priority => Default_Main_Priority, + Munit_Index => 0, + Serial_Number => 0, + Source_Index => Src_Ind, + Unit_File_Name => Fname, + Unit_Name => Uname_Actual, + Version => Source_Checksum (Src_Ind)); -- Parse the new unit diff --git a/gcc/ada/lib-writ.adb b/gcc/ada/lib-writ.adb index 7747f39891d..40d5103e78e 100644 --- a/gcc/ada/lib-writ.adb +++ b/gcc/ada/lib-writ.adb @@ -69,24 +69,25 @@ package body Lib.Writ is begin Units.Increment_Last; Units.Table (Units.Last) := - (Unit_File_Name => File_Name (S), - Unit_Name => No_Unit_Name, - Expected_Unit => No_Unit_Name, - Source_Index => S, - Cunit => Empty, - Cunit_Entity => Empty, - Dependency_Num => 0, - Dynamic_Elab => False, - Fatal_Error => False, - Generate_Code => False, - Has_RACW => False, - Ident_String => Empty, - Loading => False, - Main_Priority => -1, - Munit_Index => 0, - Serial_Number => 0, - Version => 0, - Error_Location => No_Location); + (Unit_File_Name => File_Name (S), + Unit_Name => No_Unit_Name, + Expected_Unit => No_Unit_Name, + Source_Index => S, + Cunit => Empty, + Cunit_Entity => Empty, + Dependency_Num => 0, + Dynamic_Elab => False, + Fatal_Error => False, + Generate_Code => False, + Has_RACW => False, + Is_Compiler_Unit => False, + Ident_String => Empty, + Loading => False, + Main_Priority => -1, + Munit_Index => 0, + Serial_Number => 0, + Version => 0, + Error_Location => No_Location); end Add_Preprocessing_Dependency; ------------------------------ @@ -122,24 +123,25 @@ package body Lib.Writ is Units.Increment_Last; Units.Table (Units.Last) := ( - Unit_File_Name => System_Fname, - Unit_Name => System_Uname, - Expected_Unit => System_Uname, - Source_Index => System_Source_File_Index, - Cunit => Empty, - Cunit_Entity => Empty, - Dependency_Num => 0, - Dynamic_Elab => False, - Fatal_Error => False, - Generate_Code => False, - Has_RACW => False, - Ident_String => Empty, - Loading => False, - Main_Priority => -1, - Munit_Index => 0, - Serial_Number => 0, - Version => 0, - Error_Location => No_Location); + Unit_File_Name => System_Fname, + Unit_Name => System_Uname, + Expected_Unit => System_Uname, + Source_Index => System_Source_File_Index, + Cunit => Empty, + Cunit_Entity => Empty, + Dependency_Num => 0, + Dynamic_Elab => False, + Fatal_Error => False, + Generate_Code => False, + Has_RACW => False, + Is_Compiler_Unit => False, + Ident_String => Empty, + Loading => False, + Main_Priority => -1, + Munit_Index => 0, + Serial_Number => 0, + Version => 0, + Error_Location => No_Location); -- Parse system.ads so that the checksum is set right -- Style checks are not applied. diff --git a/gcc/ada/lib.adb b/gcc/ada/lib.adb index 7c5db5df88b..ee975bd18d9 100644 --- a/gcc/ada/lib.adb +++ b/gcc/ada/lib.adb @@ -120,6 +120,11 @@ package body Lib is return Units.Table (U).Has_RACW; end Has_RACW; + function Is_Compiler_Unit (U : Unit_Number_Type) return Boolean is + begin + return Units.Table (U).Is_Compiler_Unit; + end Is_Compiler_Unit; + function Ident_String (U : Unit_Number_Type) return Node_Id is begin return Units.Table (U).Ident_String; @@ -195,6 +200,14 @@ package body Lib is Units.Table (U).Has_RACW := B; end Set_Has_RACW; + procedure Set_Is_Compiler_Unit + (U : Unit_Number_Type; + B : Boolean := True) + is + begin + Units.Table (U).Is_Compiler_Unit := B; + end Set_Is_Compiler_Unit; + procedure Set_Ident_String (U : Unit_Number_Type; N : Node_Id) is begin Units.Table (U).Ident_String := N; diff --git a/gcc/ada/lib.ads b/gcc/ada/lib.ads index 33d8727ae88..19cfa1841ac 100644 --- a/gcc/ada/lib.ads +++ b/gcc/ada/lib.ads @@ -325,6 +325,10 @@ package Lib is -- (RACW) object. This is used for controlling generation of the RA -- attribute in the ali file. + -- Is_Compiler_Unit + -- A Boolean flag, initially set False by default, set to True if a + -- pragma Compiler_Unit appears in the unit. + -- Ident_String -- N_String_Literal node from a valid pragma Ident that applies to -- this unit. If no Ident pragma applies to the unit, then Empty. @@ -377,6 +381,7 @@ package Lib is function Generate_Code (U : Unit_Number_Type) return Boolean; function Ident_String (U : Unit_Number_Type) return Node_Id; function Has_RACW (U : Unit_Number_Type) return Boolean; + function Is_Compiler_Unit (U : Unit_Number_Type) return Boolean; function Loading (U : Unit_Number_Type) return Boolean; function Main_Priority (U : Unit_Number_Type) return Int; function Munit_Index (U : Unit_Number_Type) return Nat; @@ -385,17 +390,18 @@ package Lib is function Unit_Name (U : Unit_Number_Type) return Unit_Name_Type; -- Get value of named field from given units table entry - procedure Set_Cunit (U : Unit_Number_Type; N : Node_Id); - procedure Set_Cunit_Entity (U : Unit_Number_Type; E : Entity_Id); - procedure Set_Dynamic_Elab (U : Unit_Number_Type; B : Boolean := True); - procedure Set_Error_Location (U : Unit_Number_Type; W : Source_Ptr); - procedure Set_Fatal_Error (U : Unit_Number_Type; B : Boolean := True); - procedure Set_Generate_Code (U : Unit_Number_Type; B : Boolean := True); - procedure Set_Has_RACW (U : Unit_Number_Type; B : Boolean := True); - procedure Set_Ident_String (U : Unit_Number_Type; N : Node_Id); - procedure Set_Loading (U : Unit_Number_Type; B : Boolean := True); - procedure Set_Main_Priority (U : Unit_Number_Type; P : Int); - procedure Set_Unit_Name (U : Unit_Number_Type; N : Unit_Name_Type); + procedure Set_Cunit (U : Unit_Number_Type; N : Node_Id); + procedure Set_Cunit_Entity (U : Unit_Number_Type; E : Entity_Id); + procedure Set_Dynamic_Elab (U : Unit_Number_Type; B : Boolean := True); + procedure Set_Error_Location (U : Unit_Number_Type; W : Source_Ptr); + procedure Set_Fatal_Error (U : Unit_Number_Type; B : Boolean := True); + procedure Set_Generate_Code (U : Unit_Number_Type; B : Boolean := True); + procedure Set_Has_RACW (U : Unit_Number_Type; B : Boolean := True); + procedure Set_Is_Compiler_Unit (U : Unit_Number_Type; B : Boolean := True); + procedure Set_Ident_String (U : Unit_Number_Type; N : Node_Id); + procedure Set_Loading (U : Unit_Number_Type; B : Boolean := True); + procedure Set_Main_Priority (U : Unit_Number_Type; P : Int); + procedure Set_Unit_Name (U : Unit_Number_Type; N : Unit_Name_Type); -- Set value of named field for given units table entry. Note that we -- do not have an entry for each possible field, since some of the fields -- can only be set by specialized interfaces (defined below). @@ -618,6 +624,7 @@ private pragma Inline (Fatal_Error); pragma Inline (Generate_Code); pragma Inline (Has_RACW); + pragma Inline (Is_Compiler_Unit); pragma Inline (Increment_Serial_Number); pragma Inline (Loading); pragma Inline (Main_Priority); @@ -651,6 +658,7 @@ private Fatal_Error : Boolean; Generate_Code : Boolean; Has_RACW : Boolean; + Is_Compiler_Unit : Boolean; Dynamic_Elab : Boolean; Loading : Boolean; end record; @@ -677,10 +685,11 @@ private Generate_Code at 53 range 0 .. 7; Has_RACW at 54 range 0 .. 7; Dynamic_Elab at 55 range 0 .. 7; - Loading at 56 range 0 .. 31; + Is_Compiler_Unit at 56 range 0 .. 31; + Loading at 60 range 0 .. 31; end record; - for Unit_Record'Size use 60 * 8; + for Unit_Record'Size use 64 * 8; -- This ensures that we did not leave out any fields package Units is new Table.Table ( diff --git a/gcc/ada/par-prag.adb b/gcc/ada/par-prag.adb index df87a74e6f1..d51ed2ec20b 100644 --- a/gcc/ada/par-prag.adb +++ b/gcc/ada/par-prag.adb @@ -1057,6 +1057,7 @@ begin Pragma_CIL_Constructor | Pragma_Compile_Time_Error | Pragma_Compile_Time_Warning | + Pragma_Compiler_Unit | Pragma_Convention_Identifier | Pragma_CPP_Class | Pragma_CPP_Constructor | diff --git a/gcc/ada/restrict.adb b/gcc/ada/restrict.adb index 4305e6cf913..ac1d254f85e 100644 --- a/gcc/ada/restrict.adb +++ b/gcc/ada/restrict.adb @@ -84,6 +84,17 @@ package body Restrict is end if; end Abort_Allowed; + ------------------------- + -- Check_Compiler_Unit -- + ------------------------- + + procedure Check_Compiler_Unit (N : Node_Id) is + begin + if Is_Compiler_Unit (Get_Source_Unit (N)) then + Error_Msg_N ("use of construct not allowed in compiler", N); + end if; + end Check_Compiler_Unit; + ------------------------------------ -- Check_Elaboration_Code_Allowed -- ------------------------------------ diff --git a/gcc/ada/restrict.ads b/gcc/ada/restrict.ads index 188bc7823c7..11e7075685d 100644 --- a/gcc/ada/restrict.ads +++ b/gcc/ada/restrict.ads @@ -171,6 +171,11 @@ package Restrict is -- For abort to be allowed, either No_Abort_Statements must be False, -- or Max_Asynchronous_Select_Nesting must be non-zero. + procedure Check_Compiler_Unit (N : Node_Id); + -- If unit N is in a unit that has a pragma Compiler_Unit, then a message + -- is posted on node N noting use of a construct that is not permitted in + -- the compiler. + procedure Check_Restricted_Unit (U : Unit_Name_Type; N : Node_Id); -- Checks if loading of unit U is prohibited by the setting of some -- restriction (e.g. No_IO restricts the loading of unit Ada.Text_IO). diff --git a/gcc/ada/s-addope.adb b/gcc/ada/s-addope.adb index 548b214dccc..b9350c6f8ea 100644 --- a/gcc/ada/s-addope.adb +++ b/gcc/ada/s-addope.adb @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with Ada.Unchecked_Conversion; package body System.Address_Operations is diff --git a/gcc/ada/s-addope.ads b/gcc/ada/s-addope.ads index 680fe35ae4e..99026bd218e 100644 --- a/gcc/ada/s-addope.ads +++ b/gcc/ada/s-addope.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 2004-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 2004-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -42,6 +42,10 @@ -- inappropriate use by applications programs). In addition, the logical -- operations may not be available if type Address is a signed integer. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.Address_Operations is pragma Pure; diff --git a/gcc/ada/s-assert.adb b/gcc/ada/s-assert.adb index 8123e6ca181..38714faf7d5 100644 --- a/gcc/ada/s-assert.adb +++ b/gcc/ada/s-assert.adb @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with Ada.Exceptions; with System.Exceptions; diff --git a/gcc/ada/s-assert.ads b/gcc/ada/s-assert.ads index b3f10b7e3cb..a890f406065 100644 --- a/gcc/ada/s-assert.ads +++ b/gcc/ada/s-assert.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2005 Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -36,6 +36,10 @@ -- This unit may be used directly from an application program by providing -- an appropriate WITH, and the interface can be expected to remain stable. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.Assertions is Assert_Failure : exception; diff --git a/gcc/ada/s-carun8.adb b/gcc/ada/s-carun8.adb index 36bd3be47ef..d6f43f10cb9 100644 --- a/gcc/ada/s-carun8.adb +++ b/gcc/ada/s-carun8.adb @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with System.Address_Operations; use System.Address_Operations; with Ada.Unchecked_Conversion; diff --git a/gcc/ada/s-carun8.ads b/gcc/ada/s-carun8.ads index be095ae12eb..2bbbe6a08d3 100644 --- a/gcc/ada/s-carun8.ads +++ b/gcc/ada/s-carun8.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 2002-2005 Free Software Foundation, Inc. -- +-- Copyright (C) 2002-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -34,6 +34,10 @@ -- This package contains functions for runtime comparisons on arrays whose -- elements are 8-bit discrete type values to be treated as unsigned. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.Compare_Array_Unsigned_8 is -- Note: although the functions in this package are in a sense Pure, the diff --git a/gcc/ada/s-casuti.adb b/gcc/ada/s-casuti.adb index 16f756260d0..807024e7631 100644 --- a/gcc/ada/s-casuti.adb +++ b/gcc/ada/s-casuti.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1995-2005 AdaCore -- +-- Copyright (C) 1995-2007, AdaCore -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package body System.Case_Util is -------------- diff --git a/gcc/ada/s-casuti.ads b/gcc/ada/s-casuti.ads index 6b444d396ca..8ba633c288c 100644 --- a/gcc/ada/s-casuti.ads +++ b/gcc/ada/s-casuti.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1995-2005 AdaCore -- +-- Copyright (C) 1995-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -39,6 +39,10 @@ -- Note that all the routines in this package are available to the user -- via GNAT.Case_Util, which imports all the entities from this package. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.Case_Util is pragma Pure; diff --git a/gcc/ada/s-crc32.adb b/gcc/ada/s-crc32.adb index 5062072462b..bd3e3591a37 100644 --- a/gcc/ada/s-crc32.adb +++ b/gcc/ada/s-crc32.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 2001-2002 Free Software Foundation, Inc. -- +-- Copyright (C) 2001-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package body System.CRC32 is Init : constant CRC32 := 16#FFFF_FFFF#; -- Initial value diff --git a/gcc/ada/s-crc32.ads b/gcc/ada/s-crc32.ads index 7f71abe7ade..9737c732800 100644 --- a/gcc/ada/s-crc32.ads +++ b/gcc/ada/s-crc32.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 2001 Free Software Foundation, Inc. -- +-- Copyright (C) 2001-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -56,6 +56,10 @@ -- "Computation of Cyclic Redundancy Checks via Table Look-Up", Communications -- of the ACM, Vol. 31 No. 8, pp.1008-1013 Aug. 1988. Sarwate, D.V. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with Interfaces; package System.CRC32 is diff --git a/gcc/ada/s-except.adb b/gcc/ada/s-except.adb index 7c1923951ff..56f387f68a5 100755 --- a/gcc/ada/s-except.adb +++ b/gcc/ada/s-except.adb @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package body System.Exceptions is --------------------------- diff --git a/gcc/ada/s-except.ads b/gcc/ada/s-except.ads index 5dc5c1fa563..cd052075a5c 100644 --- a/gcc/ada/s-except.ads +++ b/gcc/ada/s-except.ads @@ -35,6 +35,10 @@ -- It should be compiled without optimization to let debuggers inspect -- parameter values reliably from breakpoints on the routines. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with System.Standard_Library; package System.Exceptions is diff --git a/gcc/ada/s-exctab.adb b/gcc/ada/s-exctab.adb index 7b7cfc14c21..a97d04ef645 100644 --- a/gcc/ada/s-exctab.adb +++ b/gcc/ada/s-exctab.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1996-2005 Free Software Foundation, Inc. -- +-- Copyright (C) 1996-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with System.HTable; with System.Soft_Links; use System.Soft_Links; diff --git a/gcc/ada/s-exctab.ads b/gcc/ada/s-exctab.ads index db0f392f19e..ea4f15b577f 100644 --- a/gcc/ada/s-exctab.ads +++ b/gcc/ada/s-exctab.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1996-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 1996-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -35,6 +35,10 @@ -- registered exception names, for the implementation of the mapping -- of names to exceptions (used for exception streams and attributes) +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with System.Standard_Library; package System.Exception_Table is diff --git a/gcc/ada/s-htable.adb b/gcc/ada/s-htable.adb index cc890d626a7..9dbb7f98420 100644 --- a/gcc/ada/s-htable.adb +++ b/gcc/ada/s-htable.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1995-2006, AdaCore -- +-- Copyright (C) 1995-2007, AdaCore -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with Ada.Unchecked_Deallocation; package body System.HTable is diff --git a/gcc/ada/s-htable.ads b/gcc/ada/s-htable.ads index 95622aea7c5..d5116c69f3b 100644 --- a/gcc/ada/s-htable.ads +++ b/gcc/ada/s-htable.ads @@ -39,6 +39,10 @@ -- The Static_HTable package provides a more complex interface that allows -- complete control over allocation. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.HTable is pragma Preelaborate; diff --git a/gcc/ada/s-imgenu.adb b/gcc/ada/s-imgenu.adb index 75e0677dc9c..c1a23dd62cf 100644 --- a/gcc/ada/s-imgenu.adb +++ b/gcc/ada/s-imgenu.adb @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with Ada.Unchecked_Conversion; package body System.Img_Enum is diff --git a/gcc/ada/s-imgenu.ads b/gcc/ada/s-imgenu.ads index 853942259e1..e9b01f354e4 100644 --- a/gcc/ada/s-imgenu.ads +++ b/gcc/ada/s-imgenu.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 2000-2005 Free Software Foundation, Inc. -- +-- Copyright (C) 2000-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -36,6 +36,10 @@ -- package System (where it is too early to start building image tables). -- Special routines exist for the enumeration routines in these packages. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.Img_Enum is pragma Pure; diff --git a/gcc/ada/s-mastop.adb b/gcc/ada/s-mastop.adb index 04906e4cd2c..e707aa693c3 100644 --- a/gcc/ada/s-mastop.adb +++ b/gcc/ada/s-mastop.adb @@ -7,7 +7,7 @@ -- B o d y -- -- (Dummy version) -- -- -- --- Copyright (C) 1999-2005 Free Software Foundation, Inc. -- +-- Copyright (C) 1999-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -35,6 +35,10 @@ -- This dummy version of System.Machine_State_Operations is used -- on targets for which zero cost exception handling is not implemented. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package body System.Machine_State_Operations is -- Turn off warnings since many unused parameters diff --git a/gcc/ada/s-mastop.ads b/gcc/ada/s-mastop.ads index c60cae66385..39138bc3929 100644 --- a/gcc/ada/s-mastop.ads +++ b/gcc/ada/s-mastop.ads @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + pragma Polling (Off); -- We must turn polling off for this unit, because otherwise we get -- elaboration circularities with System.Exception_Tables. diff --git a/gcc/ada/s-memory.adb b/gcc/ada/s-memory.adb index d149bd513ce..cfc539fcbdd 100644 --- a/gcc/ada/s-memory.adb +++ b/gcc/ada/s-memory.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 2001-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 2001-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -43,6 +43,10 @@ -- you can remove the calls to Abort_Defer.all and Abort_Undefer.all from -- this unit. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with Ada.Exceptions; with System.Soft_Links; with System.Parameters; diff --git a/gcc/ada/s-memory.ads b/gcc/ada/s-memory.ads index 87b28ace46c..e455af6f5a6 100644 --- a/gcc/ada/s-memory.ads +++ b/gcc/ada/s-memory.ads @@ -42,6 +42,10 @@ -- This unit may be used directly from an application program by providing -- an appropriate WITH, and the interface can be expected to remain stable. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.Memory is pragma Elaborate_Body; diff --git a/gcc/ada/s-os_lib.adb b/gcc/ada/s-os_lib.adb index c37ab61c546..d09d9235a73 100755 --- a/gcc/ada/s-os_lib.adb +++ b/gcc/ada/s-os_lib.adb @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with System.Case_Util; with System.CRTL; with System.Soft_Links; diff --git a/gcc/ada/s-os_lib.ads b/gcc/ada/s-os_lib.ads index cfa41480f43..bde73fdc616 100755 --- a/gcc/ada/s-os_lib.ads +++ b/gcc/ada/s-os_lib.ads @@ -50,6 +50,10 @@ -- be used by other predefined packages. User access to this package is via -- a renaming of this package in GNAT.OS_Lib (file g-os_lib.ads). +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with System; with System.Strings; diff --git a/gcc/ada/s-purexc.ads b/gcc/ada/s-purexc.ads index 4600f4a07db..4fd9c58bcf9 100644 --- a/gcc/ada/s-purexc.ads +++ b/gcc/ada/s-purexc.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 2000-2005, AdaCore -- +-- Copyright (C) 2000-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,9 +31,13 @@ -- -- ------------------------------------------------------------------------------ --- This package provides an interface for raising predefined exceptions --- with an exception message. It can be used from Pure units. This unit --- is for internal use only, it is not generally available to applications. +-- This package provides an interface for raising predefined exceptions with +-- an exception message. It can be used from Pure units. This unit is for +-- internal use only, it is not generally available to applications. + +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); package System.Pure_Exceptions is pragma Pure; diff --git a/gcc/ada/s-secsta.adb b/gcc/ada/s-secsta.adb index 0efa5556696..6fafa8cfdab 100644 --- a/gcc/ada/s-secsta.adb +++ b/gcc/ada/s-secsta.adb @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with System.Soft_Links; with System.Parameters; with Ada.Unchecked_Conversion; diff --git a/gcc/ada/s-secsta.ads b/gcc/ada/s-secsta.ads index c5a2fadf502..4e39e224210 100644 --- a/gcc/ada/s-secsta.ads +++ b/gcc/ada/s-secsta.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with System.Storage_Elements; package System.Secondary_Stack is diff --git a/gcc/ada/s-soflin.adb b/gcc/ada/s-soflin.adb index 0e5c58209f8..c0787d1cc79 100644 --- a/gcc/ada/s-soflin.adb +++ b/gcc/ada/s-soflin.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1992-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + pragma Polling (Off); -- We must turn polling off for this unit, because otherwise we get -- an infinite loop from the code within the Poll routine itself. diff --git a/gcc/ada/s-soflin.ads b/gcc/ada/s-soflin.ads index bc78052904e..1b3b796e4b1 100644 --- a/gcc/ada/s-soflin.ads +++ b/gcc/ada/s-soflin.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -39,6 +39,10 @@ -- initialized to non-tasking versions, and then if the tasking support is -- initialized, they are set to the real tasking versions. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with Ada.Exceptions; with System.Stack_Checking; diff --git a/gcc/ada/s-sopco3.adb b/gcc/ada/s-sopco3.adb index 5e83586f66e..bdd11aa7b0d 100644 --- a/gcc/ada/s-sopco3.adb +++ b/gcc/ada/s-sopco3.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1992-1998, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package body System.String_Ops_Concat_3 is ------------------ diff --git a/gcc/ada/s-sopco3.ads b/gcc/ada/s-sopco3.ads index ff7dec2093c..1698b14acec 100644 --- a/gcc/ada/s-sopco3.ads +++ b/gcc/ada/s-sopco3.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -33,6 +33,10 @@ -- This package contains the function for concatenating three strings +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.String_Ops_Concat_3 is pragma Pure; diff --git a/gcc/ada/s-sopco4.adb b/gcc/ada/s-sopco4.adb index e9aef56bdcf..8770a67034e 100644 --- a/gcc/ada/s-sopco4.adb +++ b/gcc/ada/s-sopco4.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1992-1998, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package body System.String_Ops_Concat_4 is ------------------ diff --git a/gcc/ada/s-sopco4.ads b/gcc/ada/s-sopco4.ads index 5194dad6e5f..e705e5753d3 100644 --- a/gcc/ada/s-sopco4.ads +++ b/gcc/ada/s-sopco4.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -33,6 +33,10 @@ -- This package contains the function for concatenating four strings +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.String_Ops_Concat_4 is pragma Pure; diff --git a/gcc/ada/s-sopco5.adb b/gcc/ada/s-sopco5.adb index 37d537f569f..45eafd1a79c 100644 --- a/gcc/ada/s-sopco5.adb +++ b/gcc/ada/s-sopco5.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1992-1998, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package body System.String_Ops_Concat_5 is ------------------ diff --git a/gcc/ada/s-sopco5.ads b/gcc/ada/s-sopco5.ads index 001fee9a905..2613a439a4a 100644 --- a/gcc/ada/s-sopco5.ads +++ b/gcc/ada/s-sopco5.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -33,6 +33,10 @@ -- This package contains the function for concatenating five strings +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.String_Ops_Concat_5 is pragma Pure; diff --git a/gcc/ada/s-stache.adb b/gcc/ada/s-stache.adb index cd5a472ba8e..3afccbc1d67 100644 --- a/gcc/ada/s-stache.adb +++ b/gcc/ada/s-stache.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1999-2005 Free Software Foundation, Inc. -- +-- Copyright (C) 1999-2007, Free Software Foundation, Inc. -- -- -- -- GNARL is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + -- As noted in the spec, this dummy body is present because otherwise we -- have bootstrapping path problems (there used to be a real body). diff --git a/gcc/ada/s-stache.ads b/gcc/ada/s-stache.ads index 8e5e9242721..5e2c30f77d6 100644 --- a/gcc/ada/s-stache.ads +++ b/gcc/ada/s-stache.ads @@ -37,6 +37,10 @@ -- This package defines basic types and objects. Operations related to -- stack checking can be found in package System.Stack_Checking.Operations. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with System.Storage_Elements; package System.Stack_Checking is diff --git a/gcc/ada/s-stalib.adb b/gcc/ada/s-stalib.adb index 5cf871461e7..1036f3ff2fa 100644 --- a/gcc/ada/s-stalib.adb +++ b/gcc/ada/s-stalib.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1995-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 1995-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + -- The purpose of this body is simply to ensure that the two with'ed units -- are properly included in the link. They are not with'ed from the spec -- of System.Standard_Library, since this would cause order of elaboration diff --git a/gcc/ada/s-stalib.ads b/gcc/ada/s-stalib.ads index c52083bdd74..15a7864013f 100644 --- a/gcc/ada/s-stalib.ads +++ b/gcc/ada/s-stalib.ads @@ -46,6 +46,10 @@ -- package and the packages it references are included in all Ada programs, -- together with the included data. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + pragma Polling (Off); -- We must turn polling off for this unit, because otherwise we get -- elaboration circularities with Ada.Exceptions if polling is on. diff --git a/gcc/ada/s-stoele.adb b/gcc/ada/s-stoele.adb index 3a4f97333d4..01f9fdae2a4 100644 --- a/gcc/ada/s-stoele.adb +++ b/gcc/ada/s-stoele.adb @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with Ada.Unchecked_Conversion; package body System.Storage_Elements is diff --git a/gcc/ada/s-stoele.ads b/gcc/ada/s-stoele.ads index 2bc6c8bb20e..ef75211430c 100644 --- a/gcc/ada/s-stoele.ads +++ b/gcc/ada/s-stoele.ads @@ -39,6 +39,10 @@ -- extra declarations that can be introduced into System using Extend_System. -- It is a good idea to avoid use clauses for this package! +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.Storage_Elements is pragma Pure; -- Note that we take advantage of the implementation permission to make diff --git a/gcc/ada/s-strcom.adb b/gcc/ada/s-strcom.adb index d729bd16f6a..7a1daa7a6ce 100644 --- a/gcc/ada/s-strcom.adb +++ b/gcc/ada/s-strcom.adb @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with Ada.Unchecked_Conversion; package body System.String_Compare is @@ -63,8 +67,7 @@ package body System.String_Compare is (Left : System.Address; Right : System.Address; Left_Len : Natural; - Right_Len : Natural) - return Integer + Right_Len : Natural) return Integer is Compare_Len : constant Natural := Natural'Min (Left_Len, Right_Len); @@ -109,8 +112,7 @@ package body System.String_Compare is (Left : System.Address; Right : System.Address; Left_Len : Natural; - Right_Len : Natural) - return Integer + Right_Len : Natural) return Integer is Compare_Len : constant Natural := Natural'Min (Left_Len, Right_Len); diff --git a/gcc/ada/s-strcom.ads b/gcc/ada/s-strcom.ads index a2dbf51c129..97a3bfbdd88 100644 --- a/gcc/ada/s-strcom.ads +++ b/gcc/ada/s-strcom.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 2002-2005 Free Software Foundation, Inc. -- +-- Copyright (C) 2002-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -33,14 +33,17 @@ -- This package contains functions for runtime comparisons on strings +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.String_Compare is function Str_Compare (Left : System.Address; Right : System.Address; Left_Len : Natural; - Right_Len : Natural) - return Integer; + Right_Len : Natural) return Integer; -- Compare the string starting at address Left of length Left_Len -- with the string starting at address Right of length Right_Len. -- The comparison is in the normal Ada semantic sense of string @@ -52,8 +55,7 @@ package System.String_Compare is (Left : System.Address; Right : System.Address; Left_Len : Natural; - Right_Len : Natural) - return Integer; + Right_Len : Natural) return Integer; -- Same functionality as Str_Compare but always proceeds by bytes. -- Used when the caller knows that the operands are unaligned, or -- short enough that it makes no sense to go by words. diff --git a/gcc/ada/s-string.adb b/gcc/ada/s-string.adb index e374b0cced3..485d8e16a77 100755 --- a/gcc/ada/s-string.adb +++ b/gcc/ada/s-string.adb @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package body System.Strings is ---------- diff --git a/gcc/ada/s-string.ads b/gcc/ada/s-string.ads index 6b32cbf9aeb..a2a04b22c23 100755 --- a/gcc/ada/s-string.ads +++ b/gcc/ada/s-string.ads @@ -37,6 +37,10 @@ -- be used by other predefined packages. User access to this package is via -- a renaming of this package in GNAT.String (file g-string.ads). +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with Ada.Unchecked_Deallocation; package System.Strings is diff --git a/gcc/ada/s-strops.adb b/gcc/ada/s-strops.adb index c5552ebc035..4e434726b07 100644 --- a/gcc/ada/s-strops.adb +++ b/gcc/ada/s-strops.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1992-2005 Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package body System.String_Ops is ---------------- diff --git a/gcc/ada/s-strops.ads b/gcc/ada/s-strops.ads index 6813be73797..5d4191db783 100644 --- a/gcc/ada/s-strops.ads +++ b/gcc/ada/s-strops.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2005 Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -34,6 +34,10 @@ -- This package contains functions for runtime operations on strings -- (other than runtime comparison, found in s-strcom.ads). +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.String_Ops is pragma Pure; diff --git a/gcc/ada/s-traceb.adb b/gcc/ada/s-traceb.adb index e1c52080dd2..50ae913577b 100644 --- a/gcc/ada/s-traceb.adb +++ b/gcc/ada/s-traceb.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1999-2005, Free Software Foundation, Inc. -- +-- Copyright (C) 1999-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -36,6 +36,10 @@ -- Note: this unit must be compiled using -fno-optimize-sibling-calls. -- See comment below in body of Call_Chain for details on the reason. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package body System.Traceback is ------------------ diff --git a/gcc/ada/s-traceb.ads b/gcc/ada/s-traceb.ads index 23e64ff498b..2ca3b1c733f 100644 --- a/gcc/ada/s-traceb.ads +++ b/gcc/ada/s-traceb.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1999-2005, Free Software Foundation, Inc. -- +-- Copyright (C) 1999-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -36,6 +36,10 @@ -- calls in the call chain, up to either the top or a designated -- number of levels. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + pragma Polling (Off); -- We must turn polling off for this unit, because otherwise we get -- elaboration circularities with System.Exception_Tables. diff --git a/gcc/ada/s-traent.adb b/gcc/ada/s-traent.adb index 0ff61a2b22d..becedb4b706 100644 --- a/gcc/ada/s-traent.adb +++ b/gcc/ada/s-traent.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 2003-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 2003-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package body System.Traceback_Entries is ------------ diff --git a/gcc/ada/s-traent.ads b/gcc/ada/s-traent.ads index 384c9a07041..82e26a25681 100644 --- a/gcc/ada/s-traent.ads +++ b/gcc/ada/s-traent.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 2003-2005 Free Software Foundation, Inc. -- +-- Copyright (C) 2003-2007, Free Software Foundation, Inc. -- -- -- -- This specification is derived from the Ada Reference Manual for use with -- -- GNAT. The copyright notice above, and the license provisions that follow -- @@ -40,6 +40,10 @@ -- version of the package, an entry is a mere code location representing the -- address of a call instruction part of the call-chain. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.Traceback_Entries is pragma Preelaborate; diff --git a/gcc/ada/s-unstyp.ads b/gcc/ada/s-unstyp.ads index 8207469a4d7..c87d651c5d6 100644 --- a/gcc/ada/s-unstyp.ads +++ b/gcc/ada/s-unstyp.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -37,6 +37,10 @@ -- also contains some related definitions for other specialized types -- used by the compiler in connection with packed array types. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.Unsigned_Types is pragma Pure; diff --git a/gcc/ada/s-utf_32.adb b/gcc/ada/s-utf_32.adb index d879d206754..25716e53627 100755 --- a/gcc/ada/s-utf_32.adb +++ b/gcc/ada/s-utf_32.adb @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + pragma Style_Checks (Off); -- Allow long lines in this unit diff --git a/gcc/ada/s-utf_32.ads b/gcc/ada/s-utf_32.ads index b3a756fb444..8f6fab9c4fd 100755 --- a/gcc/ada/s-utf_32.ads +++ b/gcc/ada/s-utf_32.ads @@ -43,6 +43,10 @@ -- the same services. The reason this package is in System is so that it can -- with'ed by other packages in the Ada and System hierarchies. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.UTF_32 is type UTF_32 is range 0 .. 16#7FFF_FFFF#; diff --git a/gcc/ada/s-wchcnv.adb b/gcc/ada/s-wchcnv.adb index d293b95269e..b58290f764b 100644 --- a/gcc/ada/s-wchcnv.adb +++ b/gcc/ada/s-wchcnv.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1992-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,9 +31,9 @@ -- -- ------------------------------------------------------------------------------ --- This package contains generic subprograms used for converting between --- sequences of Character and Wide_Character. All access to wide character --- sequences is isolated in this unit. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); with Interfaces; use Interfaces; with System.WCh_Con; use System.WCh_Con; diff --git a/gcc/ada/s-wchcnv.ads b/gcc/ada/s-wchcnv.ads index bebf56240ab..5c3459f4c26 100644 --- a/gcc/ada/s-wchcnv.ads +++ b/gcc/ada/s-wchcnv.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2005, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,9 +31,17 @@ -- -- ------------------------------------------------------------------------------ +-- This package contains generic subprograms used for converting between +-- sequences of Character and Wide_Character. All access to wide character +-- sequences is isolated in this unit. + -- This unit may be used directly from an application program by providing -- an appropriate WITH, and the interface can be expected to remain stable. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + with System.WCh_Con; package System.WCh_Cnv is diff --git a/gcc/ada/s-wchcon.adb b/gcc/ada/s-wchcon.adb index 5a05dd1f2e4..53e20c8436a 100755 --- a/gcc/ada/s-wchcon.adb +++ b/gcc/ada/s-wchcon.adb @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package body System.WCh_Con is ---------------------------- diff --git a/gcc/ada/s-wchcon.ads b/gcc/ada/s-wchcon.ads index 38b952f3c10..8607c19e951 100644 --- a/gcc/ada/s-wchcon.ads +++ b/gcc/ada/s-wchcon.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -38,6 +38,10 @@ -- This unit may be used directly from an application program by providing -- an appropriate WITH, and the interface can be expected to remain stable. +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.WCh_Con is pragma Pure; diff --git a/gcc/ada/s-wchjis.adb b/gcc/ada/s-wchjis.adb index e18d22da3d0..8dbe2dba66f 100644 --- a/gcc/ada/s-wchjis.adb +++ b/gcc/ada/s-wchjis.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1992-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -31,6 +31,10 @@ -- -- ------------------------------------------------------------------------------ +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package body System.WCh_JIS is type Byte is mod 256; diff --git a/gcc/ada/s-wchjis.ads b/gcc/ada/s-wchjis.ads index 45354aeb771..0d70a65f04b 100644 --- a/gcc/ada/s-wchjis.ads +++ b/gcc/ada/s-wchjis.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2006, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2007, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -34,6 +34,10 @@ -- This package contains routines used for converting between internal -- JIS codes and the two external forms we support (EUC and Shift-JIS) +pragma Warnings (Off); +pragma Compiler_Unit; +pragma Warnings (On); + package System.WCh_JIS is pragma Pure; diff --git a/gcc/ada/sem_ch11.adb b/gcc/ada/sem_ch11.adb index 2ea54726b47..f6ce93d5443 100644 --- a/gcc/ada/sem_ch11.adb +++ b/gcc/ada/sem_ch11.adb @@ -527,7 +527,10 @@ package body Sem_Ch11 is Set_Is_Raised (Exception_Name); end if; + -- Deal with RAISE WITH case + if Present (Expression (N)) then + Check_Compiler_Unit (Expression (N)); Analyze_And_Resolve (Expression (N), Standard_String); end if; end if; diff --git a/gcc/ada/sem_prag.adb b/gcc/ada/sem_prag.adb index 01f8091cca4..71a3da2fa0d 100644 --- a/gcc/ada/sem_prag.adb +++ b/gcc/ada/sem_prag.adb @@ -5310,6 +5310,15 @@ package body Sem_Prag is when Pragma_Compile_Time_Warning => Process_Compile_Time_Warning_Or_Error; + ------------------- + -- Compiler_Unit -- + ------------------- + + when Pragma_Compiler_Unit => + GNAT_Pragma; + Check_Arg_Count (0); + Set_Is_Compiler_Unit (Get_Source_Unit (N)); + ----------------------------- -- Complete_Representation -- ----------------------------- @@ -11235,6 +11244,7 @@ package body Sem_Prag is Pragma_Common_Object => -1, Pragma_Compile_Time_Error => -1, Pragma_Compile_Time_Warning => -1, + Pragma_Compiler_Unit => 0, Pragma_Complete_Representation => 0, Pragma_Complex_Representation => 0, Pragma_Component_Alignment => -1, diff --git a/gcc/ada/snames.adb b/gcc/ada/snames.adb index 5c26cd4362a..ce6bdb1f800 100644 --- a/gcc/ada/snames.adb +++ b/gcc/ada/snames.adb @@ -183,6 +183,7 @@ package body Snames is "check_name#" & "compile_time_error#" & "compile_time_warning#" & + "compiler_unit#" & "component_alignment#" & "convention_identifier#" & "debug_policy#" & diff --git a/gcc/ada/snames.ads b/gcc/ada/snames.ads index c6632ea663d..dd9521a49fe 100644 --- a/gcc/ada/snames.ads +++ b/gcc/ada/snames.ads @@ -344,57 +344,58 @@ package Snames is Name_Check_Name : constant Name_Id := N + 122; -- GNAT Name_Compile_Time_Error : constant Name_Id := N + 123; -- GNAT Name_Compile_Time_Warning : constant Name_Id := N + 124; -- GNAT - Name_Component_Alignment : constant Name_Id := N + 125; -- GNAT - Name_Convention_Identifier : constant Name_Id := N + 126; -- GNAT - Name_Debug_Policy : constant Name_Id := N + 127; -- GNAT - Name_Detect_Blocking : constant Name_Id := N + 128; -- Ada 05 - Name_Discard_Names : constant Name_Id := N + 129; - Name_Elaboration_Checks : constant Name_Id := N + 130; -- GNAT - Name_Eliminate : constant Name_Id := N + 131; -- GNAT - Name_Extend_System : constant Name_Id := N + 132; -- GNAT - Name_Extensions_Allowed : constant Name_Id := N + 133; -- GNAT - Name_External_Name_Casing : constant Name_Id := N + 134; -- GNAT - Name_Float_Representation : constant Name_Id := N + 135; -- GNAT - Name_Implicit_Packing : constant Name_Id := N + 136; -- GNAT - Name_Initialize_Scalars : constant Name_Id := N + 137; -- GNAT - Name_Interrupt_State : constant Name_Id := N + 138; -- GNAT - Name_License : constant Name_Id := N + 139; -- GNAT - Name_Locking_Policy : constant Name_Id := N + 140; - Name_Long_Float : constant Name_Id := N + 141; -- VMS - Name_No_Run_Time : constant Name_Id := N + 142; -- GNAT - Name_No_Strict_Aliasing : constant Name_Id := N + 143; -- GNAT - Name_Normalize_Scalars : constant Name_Id := N + 144; - Name_Polling : constant Name_Id := N + 145; -- GNAT - Name_Persistent_BSS : constant Name_Id := N + 146; -- GNAT - Name_Priority_Specific_Dispatching : constant Name_Id := N + 147; -- Ada 05 - Name_Profile : constant Name_Id := N + 148; -- Ada 05 - Name_Profile_Warnings : constant Name_Id := N + 149; -- GNAT - Name_Propagate_Exceptions : constant Name_Id := N + 150; -- GNAT - Name_Queuing_Policy : constant Name_Id := N + 151; - Name_Ravenscar : constant Name_Id := N + 152; -- GNAT - Name_Restricted_Run_Time : constant Name_Id := N + 153; -- GNAT - Name_Restrictions : constant Name_Id := N + 154; - Name_Restriction_Warnings : constant Name_Id := N + 155; -- GNAT - Name_Reviewable : constant Name_Id := N + 156; - Name_Source_File_Name : constant Name_Id := N + 157; -- GNAT - Name_Source_File_Name_Project : constant Name_Id := N + 158; -- GNAT - Name_Style_Checks : constant Name_Id := N + 159; -- GNAT - Name_Suppress : constant Name_Id := N + 160; - Name_Suppress_Exception_Locations : constant Name_Id := N + 161; -- GNAT - Name_Task_Dispatching_Policy : constant Name_Id := N + 162; - Name_Universal_Data : constant Name_Id := N + 163; -- AAMP - Name_Unsuppress : constant Name_Id := N + 164; -- GNAT - Name_Use_VADS_Size : constant Name_Id := N + 165; -- GNAT - Name_Validity_Checks : constant Name_Id := N + 166; -- GNAT - Name_Warnings : constant Name_Id := N + 167; -- GNAT - Name_Wide_Character_Encoding : constant Name_Id := N + 168; -- GNAT - Last_Configuration_Pragma_Name : constant Name_Id := N + 168; + Name_Compiler_Unit : constant Name_Id := N + 125; -- GNAT + Name_Component_Alignment : constant Name_Id := N + 126; -- GNAT + Name_Convention_Identifier : constant Name_Id := N + 127; -- GNAT + Name_Debug_Policy : constant Name_Id := N + 128; -- GNAT + Name_Detect_Blocking : constant Name_Id := N + 129; -- Ada 05 + Name_Discard_Names : constant Name_Id := N + 130; + Name_Elaboration_Checks : constant Name_Id := N + 131; -- GNAT + Name_Eliminate : constant Name_Id := N + 132; -- GNAT + Name_Extend_System : constant Name_Id := N + 133; -- GNAT + Name_Extensions_Allowed : constant Name_Id := N + 134; -- GNAT + Name_External_Name_Casing : constant Name_Id := N + 135; -- GNAT + Name_Float_Representation : constant Name_Id := N + 136; -- GNAT + Name_Implicit_Packing : constant Name_Id := N + 137; -- GNAT + Name_Initialize_Scalars : constant Name_Id := N + 138; -- GNAT + Name_Interrupt_State : constant Name_Id := N + 139; -- GNAT + Name_License : constant Name_Id := N + 140; -- GNAT + Name_Locking_Policy : constant Name_Id := N + 141; + Name_Long_Float : constant Name_Id := N + 142; -- VMS + Name_No_Run_Time : constant Name_Id := N + 143; -- GNAT + Name_No_Strict_Aliasing : constant Name_Id := N + 144; -- GNAT + Name_Normalize_Scalars : constant Name_Id := N + 145; + Name_Polling : constant Name_Id := N + 146; -- GNAT + Name_Persistent_BSS : constant Name_Id := N + 147; -- GNAT + Name_Priority_Specific_Dispatching : constant Name_Id := N + 148; -- Ada 05 + Name_Profile : constant Name_Id := N + 149; -- Ada 05 + Name_Profile_Warnings : constant Name_Id := N + 150; -- GNAT + Name_Propagate_Exceptions : constant Name_Id := N + 151; -- GNAT + Name_Queuing_Policy : constant Name_Id := N + 152; + Name_Ravenscar : constant Name_Id := N + 153; -- GNAT + Name_Restricted_Run_Time : constant Name_Id := N + 154; -- GNAT + Name_Restrictions : constant Name_Id := N + 155; + Name_Restriction_Warnings : constant Name_Id := N + 156; -- GNAT + Name_Reviewable : constant Name_Id := N + 157; + Name_Source_File_Name : constant Name_Id := N + 158; -- GNAT + Name_Source_File_Name_Project : constant Name_Id := N + 159; -- GNAT + Name_Style_Checks : constant Name_Id := N + 160; -- GNAT + Name_Suppress : constant Name_Id := N + 161; + Name_Suppress_Exception_Locations : constant Name_Id := N + 162; -- GNAT + Name_Task_Dispatching_Policy : constant Name_Id := N + 163; + Name_Universal_Data : constant Name_Id := N + 164; -- AAMP + Name_Unsuppress : constant Name_Id := N + 165; -- GNAT + Name_Use_VADS_Size : constant Name_Id := N + 166; -- GNAT + Name_Validity_Checks : constant Name_Id := N + 167; -- GNAT + Name_Warnings : constant Name_Id := N + 168; -- GNAT + Name_Wide_Character_Encoding : constant Name_Id := N + 169; -- GNAT + Last_Configuration_Pragma_Name : constant Name_Id := N + 169; -- Remaining pragma names - Name_Abort_Defer : constant Name_Id := N + 169; -- GNAT - Name_All_Calls_Remote : constant Name_Id := N + 170; - Name_Annotate : constant Name_Id := N + 171; -- GNAT + Name_Abort_Defer : constant Name_Id := N + 170; -- GNAT + Name_All_Calls_Remote : constant Name_Id := N + 171; + Name_Annotate : constant Name_Id := N + 172; -- GNAT -- Note: AST_Entry is not in this list because its name matches the -- name of the corresponding attribute. However, it is included in the @@ -402,73 +403,73 @@ package Snames is -- and Check_Pragma_Id correctly recognize and process Name_AST_Entry. -- AST_Entry is a VMS specific pragma. - Name_Assert : constant Name_Id := N + 172; -- Ada 05 - Name_Asynchronous : constant Name_Id := N + 173; - Name_Atomic : constant Name_Id := N + 174; - Name_Atomic_Components : constant Name_Id := N + 175; - Name_Attach_Handler : constant Name_Id := N + 176; - Name_CIL_Constructor : constant Name_Id := N + 177; -- GNAT - Name_Comment : constant Name_Id := N + 178; -- GNAT - Name_Common_Object : constant Name_Id := N + 179; -- GNAT - Name_Complete_Representation : constant Name_Id := N + 180; -- GNAT - Name_Complex_Representation : constant Name_Id := N + 181; -- GNAT - Name_Controlled : constant Name_Id := N + 182; - Name_Convention : constant Name_Id := N + 183; - Name_CPP_Class : constant Name_Id := N + 184; -- GNAT - Name_CPP_Constructor : constant Name_Id := N + 185; -- GNAT - Name_CPP_Virtual : constant Name_Id := N + 186; -- GNAT - Name_CPP_Vtable : constant Name_Id := N + 187; -- GNAT - Name_Debug : constant Name_Id := N + 188; -- GNAT - Name_Elaborate : constant Name_Id := N + 189; -- Ada 83 - Name_Elaborate_All : constant Name_Id := N + 190; - Name_Elaborate_Body : constant Name_Id := N + 191; - Name_Export : constant Name_Id := N + 192; - Name_Export_Exception : constant Name_Id := N + 193; -- VMS - Name_Export_Function : constant Name_Id := N + 194; -- GNAT - Name_Export_Object : constant Name_Id := N + 195; -- GNAT - Name_Export_Procedure : constant Name_Id := N + 196; -- GNAT - Name_Export_Value : constant Name_Id := N + 197; -- GNAT - Name_Export_Valued_Procedure : constant Name_Id := N + 198; -- GNAT - Name_External : constant Name_Id := N + 199; -- GNAT - Name_Finalize_Storage_Only : constant Name_Id := N + 200; -- GNAT - Name_Ident : constant Name_Id := N + 201; -- VMS - Name_Import : constant Name_Id := N + 202; - Name_Import_Exception : constant Name_Id := N + 203; -- VMS - Name_Import_Function : constant Name_Id := N + 204; -- GNAT - Name_Import_Object : constant Name_Id := N + 205; -- GNAT - Name_Import_Procedure : constant Name_Id := N + 206; -- GNAT - Name_Import_Valued_Procedure : constant Name_Id := N + 207; -- GNAT - Name_Inline : constant Name_Id := N + 208; - Name_Inline_Always : constant Name_Id := N + 209; -- GNAT - Name_Inline_Generic : constant Name_Id := N + 210; -- GNAT - Name_Inspection_Point : constant Name_Id := N + 211; - Name_Interface_Name : constant Name_Id := N + 212; -- GNAT - Name_Interrupt_Handler : constant Name_Id := N + 213; - Name_Interrupt_Priority : constant Name_Id := N + 214; - Name_Java_Constructor : constant Name_Id := N + 215; -- GNAT - Name_Java_Interface : constant Name_Id := N + 216; -- GNAT - Name_Keep_Names : constant Name_Id := N + 217; -- GNAT - Name_Link_With : constant Name_Id := N + 218; -- GNAT - Name_Linker_Alias : constant Name_Id := N + 219; -- GNAT - Name_Linker_Constructor : constant Name_Id := N + 220; -- GNAT - Name_Linker_Destructor : constant Name_Id := N + 221; -- GNAT - Name_Linker_Options : constant Name_Id := N + 222; - Name_Linker_Section : constant Name_Id := N + 223; -- GNAT - Name_List : constant Name_Id := N + 224; - Name_Machine_Attribute : constant Name_Id := N + 225; -- GNAT - Name_Main : constant Name_Id := N + 226; -- GNAT - Name_Main_Storage : constant Name_Id := N + 227; -- GNAT - Name_Memory_Size : constant Name_Id := N + 228; -- Ada 83 - Name_No_Body : constant Name_Id := N + 229; -- GNAT - Name_No_Return : constant Name_Id := N + 230; -- GNAT - Name_Obsolescent : constant Name_Id := N + 231; -- GNAT - Name_Optimize : constant Name_Id := N + 232; - Name_Pack : constant Name_Id := N + 233; - Name_Page : constant Name_Id := N + 234; - Name_Passive : constant Name_Id := N + 235; -- GNAT - Name_Preelaborable_Initialization : constant Name_Id := N + 236; -- Ada 05 - Name_Preelaborate : constant Name_Id := N + 237; - Name_Preelaborate_05 : constant Name_Id := N + 238; -- GNAT + Name_Assert : constant Name_Id := N + 173; -- Ada 05 + Name_Asynchronous : constant Name_Id := N + 174; + Name_Atomic : constant Name_Id := N + 175; + Name_Atomic_Components : constant Name_Id := N + 176; + Name_Attach_Handler : constant Name_Id := N + 177; + Name_CIL_Constructor : constant Name_Id := N + 178; -- GNAT + Name_Comment : constant Name_Id := N + 179; -- GNAT + Name_Common_Object : constant Name_Id := N + 180; -- GNAT + Name_Complete_Representation : constant Name_Id := N + 181; -- GNAT + Name_Complex_Representation : constant Name_Id := N + 182; -- GNAT + Name_Controlled : constant Name_Id := N + 183; + Name_Convention : constant Name_Id := N + 184; + Name_CPP_Class : constant Name_Id := N + 185; -- GNAT + Name_CPP_Constructor : constant Name_Id := N + 186; -- GNAT + Name_CPP_Virtual : constant Name_Id := N + 187; -- GNAT + Name_CPP_Vtable : constant Name_Id := N + 188; -- GNAT + Name_Debug : constant Name_Id := N + 189; -- GNAT + Name_Elaborate : constant Name_Id := N + 190; -- Ada 83 + Name_Elaborate_All : constant Name_Id := N + 191; + Name_Elaborate_Body : constant Name_Id := N + 192; + Name_Export : constant Name_Id := N + 193; + Name_Export_Exception : constant Name_Id := N + 194; -- VMS + Name_Export_Function : constant Name_Id := N + 195; -- GNAT + Name_Export_Object : constant Name_Id := N + 196; -- GNAT + Name_Export_Procedure : constant Name_Id := N + 197; -- GNAT + Name_Export_Value : constant Name_Id := N + 198; -- GNAT + Name_Export_Valued_Procedure : constant Name_Id := N + 199; -- GNAT + Name_External : constant Name_Id := N + 200; -- GNAT + Name_Finalize_Storage_Only : constant Name_Id := N + 201; -- GNAT + Name_Ident : constant Name_Id := N + 202; -- VMS + Name_Import : constant Name_Id := N + 203; + Name_Import_Exception : constant Name_Id := N + 204; -- VMS + Name_Import_Function : constant Name_Id := N + 205; -- GNAT + Name_Import_Object : constant Name_Id := N + 206; -- GNAT + Name_Import_Procedure : constant Name_Id := N + 207; -- GNAT + Name_Import_Valued_Procedure : constant Name_Id := N + 208; -- GNAT + Name_Inline : constant Name_Id := N + 209; + Name_Inline_Always : constant Name_Id := N + 210; -- GNAT + Name_Inline_Generic : constant Name_Id := N + 211; -- GNAT + Name_Inspection_Point : constant Name_Id := N + 212; + Name_Interface_Name : constant Name_Id := N + 213; -- GNAT + Name_Interrupt_Handler : constant Name_Id := N + 214; + Name_Interrupt_Priority : constant Name_Id := N + 215; + Name_Java_Constructor : constant Name_Id := N + 216; -- GNAT + Name_Java_Interface : constant Name_Id := N + 217; -- GNAT + Name_Keep_Names : constant Name_Id := N + 218; -- GNAT + Name_Link_With : constant Name_Id := N + 219; -- GNAT + Name_Linker_Alias : constant Name_Id := N + 220; -- GNAT + Name_Linker_Constructor : constant Name_Id := N + 221; -- GNAT + Name_Linker_Destructor : constant Name_Id := N + 222; -- GNAT + Name_Linker_Options : constant Name_Id := N + 223; + Name_Linker_Section : constant Name_Id := N + 224; -- GNAT + Name_List : constant Name_Id := N + 225; + Name_Machine_Attribute : constant Name_Id := N + 226; -- GNAT + Name_Main : constant Name_Id := N + 227; -- GNAT + Name_Main_Storage : constant Name_Id := N + 228; -- GNAT + Name_Memory_Size : constant Name_Id := N + 229; -- Ada 83 + Name_No_Body : constant Name_Id := N + 230; -- GNAT + Name_No_Return : constant Name_Id := N + 231; -- GNAT + Name_Obsolescent : constant Name_Id := N + 232; -- GNAT + Name_Optimize : constant Name_Id := N + 233; + Name_Pack : constant Name_Id := N + 234; + Name_Page : constant Name_Id := N + 235; + Name_Passive : constant Name_Id := N + 236; -- GNAT + Name_Preelaborable_Initialization : constant Name_Id := N + 237; -- Ada 05 + Name_Preelaborate : constant Name_Id := N + 238; + Name_Preelaborate_05 : constant Name_Id := N + 239; -- GNAT -- Note: Priority is not in this list because its name matches the -- name of the corresponding attribute. However, it is included in the @@ -476,15 +477,15 @@ package Snames is -- and Check_Pragma_Id correctly recognize and process Priority. -- Priority is a standard Ada 95 pragma. - Name_Psect_Object : constant Name_Id := N + 239; -- VMS - Name_Pure : constant Name_Id := N + 240; - Name_Pure_05 : constant Name_Id := N + 241; -- GNAT - Name_Pure_Function : constant Name_Id := N + 242; -- GNAT - Name_Remote_Call_Interface : constant Name_Id := N + 243; - Name_Remote_Types : constant Name_Id := N + 244; - Name_Share_Generic : constant Name_Id := N + 245; -- GNAT - Name_Shared : constant Name_Id := N + 246; -- Ada 83 - Name_Shared_Passive : constant Name_Id := N + 247; + Name_Psect_Object : constant Name_Id := N + 240; -- VMS + Name_Pure : constant Name_Id := N + 241; + Name_Pure_05 : constant Name_Id := N + 242; -- GNAT + Name_Pure_Function : constant Name_Id := N + 243; -- GNAT + Name_Remote_Call_Interface : constant Name_Id := N + 244; + Name_Remote_Types : constant Name_Id := N + 245; + Name_Share_Generic : constant Name_Id := N + 246; -- GNAT + Name_Shared : constant Name_Id := N + 247; -- Ada 83 + Name_Shared_Passive : constant Name_Id := N + 248; -- Note: Storage_Size is not in this list because its name matches the -- name of the corresponding attribute. However, it is included in the @@ -494,29 +495,29 @@ package Snames is -- Note: Storage_Unit is also omitted from the list because of a clash -- with an attribute name, and is treated similarly. - Name_Source_Reference : constant Name_Id := N + 248; -- GNAT - Name_Static_Elaboration_Desired : constant Name_Id := N + 249; -- GNAT - Name_Stream_Convert : constant Name_Id := N + 250; -- GNAT - Name_Subtitle : constant Name_Id := N + 251; -- GNAT - Name_Suppress_All : constant Name_Id := N + 252; -- GNAT - Name_Suppress_Debug_Info : constant Name_Id := N + 253; -- GNAT - Name_Suppress_Initialization : constant Name_Id := N + 254; -- GNAT - Name_System_Name : constant Name_Id := N + 255; -- Ada 83 - Name_Task_Info : constant Name_Id := N + 256; -- GNAT - Name_Task_Name : constant Name_Id := N + 257; -- GNAT - Name_Task_Storage : constant Name_Id := N + 258; -- VMS - Name_Time_Slice : constant Name_Id := N + 259; -- GNAT - Name_Title : constant Name_Id := N + 260; -- GNAT - Name_Unchecked_Union : constant Name_Id := N + 261; -- GNAT - Name_Unimplemented_Unit : constant Name_Id := N + 262; -- GNAT - Name_Universal_Aliasing : constant Name_Id := N + 263; -- GNAT - Name_Unreferenced : constant Name_Id := N + 264; -- GNAT - Name_Unreferenced_Objects : constant Name_Id := N + 265; -- GNAT - Name_Unreserve_All_Interrupts : constant Name_Id := N + 266; -- GNAT - Name_Volatile : constant Name_Id := N + 267; - Name_Volatile_Components : constant Name_Id := N + 268; - Name_Weak_External : constant Name_Id := N + 269; -- GNAT - Last_Pragma_Name : constant Name_Id := N + 269; + Name_Source_Reference : constant Name_Id := N + 249; -- GNAT + Name_Static_Elaboration_Desired : constant Name_Id := N + 250; -- GNAT + Name_Stream_Convert : constant Name_Id := N + 251; -- GNAT + Name_Subtitle : constant Name_Id := N + 252; -- GNAT + Name_Suppress_All : constant Name_Id := N + 253; -- GNAT + Name_Suppress_Debug_Info : constant Name_Id := N + 254; -- GNAT + Name_Suppress_Initialization : constant Name_Id := N + 255; -- GNAT + Name_System_Name : constant Name_Id := N + 256; -- Ada 83 + Name_Task_Info : constant Name_Id := N + 257; -- GNAT + Name_Task_Name : constant Name_Id := N + 258; -- GNAT + Name_Task_Storage : constant Name_Id := N + 259; -- VMS + Name_Time_Slice : constant Name_Id := N + 260; -- GNAT + Name_Title : constant Name_Id := N + 261; -- GNAT + Name_Unchecked_Union : constant Name_Id := N + 262; -- GNAT + Name_Unimplemented_Unit : constant Name_Id := N + 263; -- GNAT + Name_Universal_Aliasing : constant Name_Id := N + 264; -- GNAT + Name_Unreferenced : constant Name_Id := N + 265; -- GNAT + Name_Unreferenced_Objects : constant Name_Id := N + 266; -- GNAT + Name_Unreserve_All_Interrupts : constant Name_Id := N + 267; -- GNAT + Name_Volatile : constant Name_Id := N + 268; + Name_Volatile_Components : constant Name_Id := N + 269; + Name_Weak_External : constant Name_Id := N + 270; -- GNAT + Last_Pragma_Name : constant Name_Id := N + 270; -- Language convention names for pragma Convention/Export/Import/Interface -- Note that Name_C is not included in this list, since it was already @@ -527,119 +528,119 @@ package Snames is -- Entry and Protected, this is because these conventions cannot be -- specified by a pragma. - First_Convention_Name : constant Name_Id := N + 270; - Name_Ada : constant Name_Id := N + 270; - Name_Assembler : constant Name_Id := N + 271; - Name_CIL : constant Name_Id := N + 272; - Name_COBOL : constant Name_Id := N + 273; - Name_CPP : constant Name_Id := N + 274; - Name_Fortran : constant Name_Id := N + 275; - Name_Intrinsic : constant Name_Id := N + 276; - Name_Java : constant Name_Id := N + 277; - Name_Stdcall : constant Name_Id := N + 278; - Name_Stubbed : constant Name_Id := N + 279; - Last_Convention_Name : constant Name_Id := N + 279; + First_Convention_Name : constant Name_Id := N + 271; + Name_Ada : constant Name_Id := N + 271; + Name_Assembler : constant Name_Id := N + 272; + Name_CIL : constant Name_Id := N + 273; + Name_COBOL : constant Name_Id := N + 274; + Name_CPP : constant Name_Id := N + 275; + Name_Fortran : constant Name_Id := N + 276; + Name_Intrinsic : constant Name_Id := N + 277; + Name_Java : constant Name_Id := N + 278; + Name_Stdcall : constant Name_Id := N + 279; + Name_Stubbed : constant Name_Id := N + 280; + Last_Convention_Name : constant Name_Id := N + 280; -- The following names are preset as synonyms for Assembler - Name_Asm : constant Name_Id := N + 280; - Name_Assembly : constant Name_Id := N + 281; + Name_Asm : constant Name_Id := N + 281; + Name_Assembly : constant Name_Id := N + 282; -- The following names are preset as synonyms for C - Name_Default : constant Name_Id := N + 282; + Name_Default : constant Name_Id := N + 283; -- Name_Exernal (previously defined as pragma) -- The following names are preset as synonyms for CPP - Name_C_Plus_Plus : constant Name_Id := N + 283; + Name_C_Plus_Plus : constant Name_Id := N + 284; -- The following names are present as synonyms for Stdcall - Name_DLL : constant Name_Id := N + 284; - Name_Win32 : constant Name_Id := N + 285; + Name_DLL : constant Name_Id := N + 285; + Name_Win32 : constant Name_Id := N + 286; -- Other special names used in processing pragmas - Name_As_Is : constant Name_Id := N + 286; - Name_Attribute_Name : constant Name_Id := N + 287; - Name_Body_File_Name : constant Name_Id := N + 288; - Name_Boolean_Entry_Barriers : constant Name_Id := N + 289; - Name_Check : constant Name_Id := N + 290; - Name_Casing : constant Name_Id := N + 291; - Name_Code : constant Name_Id := N + 292; - Name_Component : constant Name_Id := N + 293; - Name_Component_Size_4 : constant Name_Id := N + 294; - Name_Copy : constant Name_Id := N + 295; - Name_D_Float : constant Name_Id := N + 296; - Name_Descriptor : constant Name_Id := N + 297; - Name_Dot_Replacement : constant Name_Id := N + 298; - Name_Dynamic : constant Name_Id := N + 299; - Name_Entity : constant Name_Id := N + 300; - Name_Entry_Count : constant Name_Id := N + 301; - Name_External_Name : constant Name_Id := N + 302; - Name_First_Optional_Parameter : constant Name_Id := N + 303; - Name_Form : constant Name_Id := N + 304; - Name_G_Float : constant Name_Id := N + 305; - Name_Gcc : constant Name_Id := N + 306; - Name_Gnat : constant Name_Id := N + 307; - Name_GPL : constant Name_Id := N + 308; - Name_IEEE_Float : constant Name_Id := N + 309; - Name_Ignore : constant Name_Id := N + 310; - Name_Info : constant Name_Id := N + 311; - Name_Internal : constant Name_Id := N + 312; - Name_Link_Name : constant Name_Id := N + 313; - Name_Lowercase : constant Name_Id := N + 314; - Name_Max_Entry_Queue_Depth : constant Name_Id := N + 315; - Name_Max_Entry_Queue_Length : constant Name_Id := N + 316; - Name_Max_Size : constant Name_Id := N + 317; - Name_Mechanism : constant Name_Id := N + 318; - Name_Message : constant Name_Id := N + 319; - Name_Mixedcase : constant Name_Id := N + 320; - Name_Modified_GPL : constant Name_Id := N + 321; - Name_Name : constant Name_Id := N + 322; - Name_NCA : constant Name_Id := N + 323; - Name_No : constant Name_Id := N + 324; - Name_No_Dependence : constant Name_Id := N + 325; - Name_No_Dynamic_Attachment : constant Name_Id := N + 326; - Name_No_Dynamic_Interrupts : constant Name_Id := N + 327; - Name_No_Requeue : constant Name_Id := N + 328; - Name_No_Requeue_Statements : constant Name_Id := N + 329; - Name_No_Task_Attributes : constant Name_Id := N + 330; - Name_No_Task_Attributes_Package : constant Name_Id := N + 331; - Name_On : constant Name_Id := N + 332; - Name_Parameter_Types : constant Name_Id := N + 333; - Name_Reference : constant Name_Id := N + 334; - Name_Restricted : constant Name_Id := N + 335; - Name_Result_Mechanism : constant Name_Id := N + 336; - Name_Result_Type : constant Name_Id := N + 337; - Name_Runtime : constant Name_Id := N + 338; - Name_SB : constant Name_Id := N + 339; - Name_Secondary_Stack_Size : constant Name_Id := N + 340; - Name_Section : constant Name_Id := N + 341; - Name_Semaphore : constant Name_Id := N + 342; - Name_Simple_Barriers : constant Name_Id := N + 343; - Name_Spec_File_Name : constant Name_Id := N + 344; - Name_State : constant Name_Id := N + 345; - Name_Static : constant Name_Id := N + 346; - Name_Stack_Size : constant Name_Id := N + 347; - Name_Subunit_File_Name : constant Name_Id := N + 348; - Name_Task_Stack_Size_Default : constant Name_Id := N + 349; - Name_Task_Type : constant Name_Id := N + 350; - Name_Time_Slicing_Enabled : constant Name_Id := N + 351; - Name_Top_Guard : constant Name_Id := N + 352; - Name_UBA : constant Name_Id := N + 353; - Name_UBS : constant Name_Id := N + 354; - Name_UBSB : constant Name_Id := N + 355; - Name_Unit_Name : constant Name_Id := N + 356; - Name_Unknown : constant Name_Id := N + 357; - Name_Unrestricted : constant Name_Id := N + 358; - Name_Uppercase : constant Name_Id := N + 359; - Name_User : constant Name_Id := N + 360; - Name_VAX_Float : constant Name_Id := N + 361; - Name_VMS : constant Name_Id := N + 362; - Name_Vtable_Ptr : constant Name_Id := N + 363; - Name_Working_Storage : constant Name_Id := N + 364; + Name_As_Is : constant Name_Id := N + 287; + Name_Attribute_Name : constant Name_Id := N + 288; + Name_Body_File_Name : constant Name_Id := N + 289; + Name_Boolean_Entry_Barriers : constant Name_Id := N + 290; + Name_Check : constant Name_Id := N + 291; + Name_Casing : constant Name_Id := N + 292; + Name_Code : constant Name_Id := N + 293; + Name_Component : constant Name_Id := N + 294; + Name_Component_Size_4 : constant Name_Id := N + 295; + Name_Copy : constant Name_Id := N + 296; + Name_D_Float : constant Name_Id := N + 297; + Name_Descriptor : constant Name_Id := N + 298; + Name_Dot_Replacement : constant Name_Id := N + 299; + Name_Dynamic : constant Name_Id := N + 300; + Name_Entity : constant Name_Id := N + 301; + Name_Entry_Count : constant Name_Id := N + 302; + Name_External_Name : constant Name_Id := N + 303; + Name_First_Optional_Parameter : constant Name_Id := N + 304; + Name_Form : constant Name_Id := N + 305; + Name_G_Float : constant Name_Id := N + 306; + Name_Gcc : constant Name_Id := N + 307; + Name_Gnat : constant Name_Id := N + 308; + Name_GPL : constant Name_Id := N + 309; + Name_IEEE_Float : constant Name_Id := N + 310; + Name_Ignore : constant Name_Id := N + 311; + Name_Info : constant Name_Id := N + 312; + Name_Internal : constant Name_Id := N + 313; + Name_Link_Name : constant Name_Id := N + 314; + Name_Lowercase : constant Name_Id := N + 315; + Name_Max_Entry_Queue_Depth : constant Name_Id := N + 316; + Name_Max_Entry_Queue_Length : constant Name_Id := N + 317; + Name_Max_Size : constant Name_Id := N + 318; + Name_Mechanism : constant Name_Id := N + 319; + Name_Message : constant Name_Id := N + 320; + Name_Mixedcase : constant Name_Id := N + 321; + Name_Modified_GPL : constant Name_Id := N + 322; + Name_Name : constant Name_Id := N + 323; + Name_NCA : constant Name_Id := N + 324; + Name_No : constant Name_Id := N + 325; + Name_No_Dependence : constant Name_Id := N + 326; + Name_No_Dynamic_Attachment : constant Name_Id := N + 327; + Name_No_Dynamic_Interrupts : constant Name_Id := N + 328; + Name_No_Requeue : constant Name_Id := N + 329; + Name_No_Requeue_Statements : constant Name_Id := N + 330; + Name_No_Task_Attributes : constant Name_Id := N + 331; + Name_No_Task_Attributes_Package : constant Name_Id := N + 332; + Name_On : constant Name_Id := N + 333; + Name_Parameter_Types : constant Name_Id := N + 334; + Name_Reference : constant Name_Id := N + 335; + Name_Restricted : constant Name_Id := N + 336; + Name_Result_Mechanism : constant Name_Id := N + 337; + Name_Result_Type : constant Name_Id := N + 338; + Name_Runtime : constant Name_Id := N + 339; + Name_SB : constant Name_Id := N + 340; + Name_Secondary_Stack_Size : constant Name_Id := N + 341; + Name_Section : constant Name_Id := N + 342; + Name_Semaphore : constant Name_Id := N + 343; + Name_Simple_Barriers : constant Name_Id := N + 344; + Name_Spec_File_Name : constant Name_Id := N + 345; + Name_State : constant Name_Id := N + 346; + Name_Static : constant Name_Id := N + 347; + Name_Stack_Size : constant Name_Id := N + 348; + Name_Subunit_File_Name : constant Name_Id := N + 349; + Name_Task_Stack_Size_Default : constant Name_Id := N + 350; + Name_Task_Type : constant Name_Id := N + 351; + Name_Time_Slicing_Enabled : constant Name_Id := N + 352; + Name_Top_Guard : constant Name_Id := N + 353; + Name_UBA : constant Name_Id := N + 354; + Name_UBS : constant Name_Id := N + 355; + Name_UBSB : constant Name_Id := N + 356; + Name_Unit_Name : constant Name_Id := N + 357; + Name_Unknown : constant Name_Id := N + 358; + Name_Unrestricted : constant Name_Id := N + 359; + Name_Uppercase : constant Name_Id := N + 360; + Name_User : constant Name_Id := N + 361; + Name_VAX_Float : constant Name_Id := N + 362; + Name_VMS : constant Name_Id := N + 363; + Name_Vtable_Ptr : constant Name_Id := N + 364; + Name_Working_Storage : constant Name_Id := N + 365; -- Names of recognized attributes. The entries with the comment "Ada 83" -- are attributes that are defined in Ada 83, but not in Ada 95. These @@ -653,169 +654,169 @@ package Snames is -- The entries marked VMS are recognized only in OpenVMS implementations -- of GNAT, and are treated as illegal in all other contexts. - First_Attribute_Name : constant Name_Id := N + 365; - Name_Abort_Signal : constant Name_Id := N + 365; -- GNAT - Name_Access : constant Name_Id := N + 366; - Name_Address : constant Name_Id := N + 367; - Name_Address_Size : constant Name_Id := N + 368; -- GNAT - Name_Aft : constant Name_Id := N + 369; - Name_Alignment : constant Name_Id := N + 370; - Name_Asm_Input : constant Name_Id := N + 371; -- GNAT - Name_Asm_Output : constant Name_Id := N + 372; -- GNAT - Name_AST_Entry : constant Name_Id := N + 373; -- VMS - Name_Bit : constant Name_Id := N + 374; -- GNAT - Name_Bit_Order : constant Name_Id := N + 375; - Name_Bit_Position : constant Name_Id := N + 376; -- GNAT - Name_Body_Version : constant Name_Id := N + 377; - Name_Callable : constant Name_Id := N + 378; - Name_Caller : constant Name_Id := N + 379; - Name_Code_Address : constant Name_Id := N + 380; -- GNAT - Name_Component_Size : constant Name_Id := N + 381; - Name_Compose : constant Name_Id := N + 382; - Name_Constrained : constant Name_Id := N + 383; - Name_Count : constant Name_Id := N + 384; - Name_Default_Bit_Order : constant Name_Id := N + 385; -- GNAT - Name_Definite : constant Name_Id := N + 386; - Name_Delta : constant Name_Id := N + 387; - Name_Denorm : constant Name_Id := N + 388; - Name_Digits : constant Name_Id := N + 389; - Name_Elaborated : constant Name_Id := N + 390; -- GNAT - Name_Emax : constant Name_Id := N + 391; -- Ada 83 - Name_Enabled : constant Name_Id := N + 392; -- GNAT - Name_Enum_Rep : constant Name_Id := N + 393; -- GNAT - Name_Epsilon : constant Name_Id := N + 394; -- Ada 83 - Name_Exponent : constant Name_Id := N + 395; - Name_External_Tag : constant Name_Id := N + 396; - Name_First : constant Name_Id := N + 397; - Name_First_Bit : constant Name_Id := N + 398; - Name_Fixed_Value : constant Name_Id := N + 399; -- GNAT - Name_Fore : constant Name_Id := N + 400; - Name_Has_Access_Values : constant Name_Id := N + 401; -- GNAT - Name_Has_Discriminants : constant Name_Id := N + 402; -- GNAT - Name_Identity : constant Name_Id := N + 403; - Name_Img : constant Name_Id := N + 404; -- GNAT - Name_Integer_Value : constant Name_Id := N + 405; -- GNAT - Name_Large : constant Name_Id := N + 406; -- Ada 83 - Name_Last : constant Name_Id := N + 407; - Name_Last_Bit : constant Name_Id := N + 408; - Name_Leading_Part : constant Name_Id := N + 409; - Name_Length : constant Name_Id := N + 410; - Name_Machine_Emax : constant Name_Id := N + 411; - Name_Machine_Emin : constant Name_Id := N + 412; - Name_Machine_Mantissa : constant Name_Id := N + 413; - Name_Machine_Overflows : constant Name_Id := N + 414; - Name_Machine_Radix : constant Name_Id := N + 415; - Name_Machine_Rounding : constant Name_Id := N + 416; -- Ada 05 - Name_Machine_Rounds : constant Name_Id := N + 417; - Name_Machine_Size : constant Name_Id := N + 418; -- GNAT - Name_Mantissa : constant Name_Id := N + 419; -- Ada 83 - Name_Max_Size_In_Storage_Elements : constant Name_Id := N + 420; - Name_Maximum_Alignment : constant Name_Id := N + 421; -- GNAT - Name_Mechanism_Code : constant Name_Id := N + 422; -- GNAT - Name_Mod : constant Name_Id := N + 423; -- Ada 05 - Name_Model_Emin : constant Name_Id := N + 424; - Name_Model_Epsilon : constant Name_Id := N + 425; - Name_Model_Mantissa : constant Name_Id := N + 426; - Name_Model_Small : constant Name_Id := N + 427; - Name_Modulus : constant Name_Id := N + 428; - Name_Null_Parameter : constant Name_Id := N + 429; -- GNAT - Name_Object_Size : constant Name_Id := N + 430; -- GNAT - Name_Partition_ID : constant Name_Id := N + 431; - Name_Passed_By_Reference : constant Name_Id := N + 432; -- GNAT - Name_Pool_Address : constant Name_Id := N + 433; - Name_Pos : constant Name_Id := N + 434; - Name_Position : constant Name_Id := N + 435; - Name_Priority : constant Name_Id := N + 436; -- Ada 05 - Name_Range : constant Name_Id := N + 437; - Name_Range_Length : constant Name_Id := N + 438; -- GNAT - Name_Round : constant Name_Id := N + 439; - Name_Safe_Emax : constant Name_Id := N + 440; -- Ada 83 - Name_Safe_First : constant Name_Id := N + 441; - Name_Safe_Large : constant Name_Id := N + 442; -- Ada 83 - Name_Safe_Last : constant Name_Id := N + 443; - Name_Safe_Small : constant Name_Id := N + 444; -- Ada 83 - Name_Scale : constant Name_Id := N + 445; - Name_Scaling : constant Name_Id := N + 446; - Name_Signed_Zeros : constant Name_Id := N + 447; - Name_Size : constant Name_Id := N + 448; - Name_Small : constant Name_Id := N + 449; - Name_Storage_Size : constant Name_Id := N + 450; - Name_Storage_Unit : constant Name_Id := N + 451; -- GNAT - Name_Stream_Size : constant Name_Id := N + 452; -- Ada 05 - Name_Tag : constant Name_Id := N + 453; - Name_Target_Name : constant Name_Id := N + 454; -- GNAT - Name_Terminated : constant Name_Id := N + 455; - Name_To_Address : constant Name_Id := N + 456; -- GNAT - Name_Type_Class : constant Name_Id := N + 457; -- GNAT - Name_UET_Address : constant Name_Id := N + 458; -- GNAT - Name_Unbiased_Rounding : constant Name_Id := N + 459; - Name_Unchecked_Access : constant Name_Id := N + 460; - Name_Unconstrained_Array : constant Name_Id := N + 461; - Name_Universal_Literal_String : constant Name_Id := N + 462; -- GNAT - Name_Unrestricted_Access : constant Name_Id := N + 463; -- GNAT - Name_VADS_Size : constant Name_Id := N + 464; -- GNAT - Name_Val : constant Name_Id := N + 465; - Name_Valid : constant Name_Id := N + 466; - Name_Value_Size : constant Name_Id := N + 467; -- GNAT - Name_Version : constant Name_Id := N + 468; - Name_Wchar_T_Size : constant Name_Id := N + 469; -- GNAT - Name_Wide_Wide_Width : constant Name_Id := N + 470; -- Ada 05 - Name_Wide_Width : constant Name_Id := N + 471; - Name_Width : constant Name_Id := N + 472; - Name_Word_Size : constant Name_Id := N + 473; -- GNAT + First_Attribute_Name : constant Name_Id := N + 366; + Name_Abort_Signal : constant Name_Id := N + 366; -- GNAT + Name_Access : constant Name_Id := N + 367; + Name_Address : constant Name_Id := N + 368; + Name_Address_Size : constant Name_Id := N + 369; -- GNAT + Name_Aft : constant Name_Id := N + 370; + Name_Alignment : constant Name_Id := N + 371; + Name_Asm_Input : constant Name_Id := N + 372; -- GNAT + Name_Asm_Output : constant Name_Id := N + 373; -- GNAT + Name_AST_Entry : constant Name_Id := N + 374; -- VMS + Name_Bit : constant Name_Id := N + 375; -- GNAT + Name_Bit_Order : constant Name_Id := N + 376; + Name_Bit_Position : constant Name_Id := N + 377; -- GNAT + Name_Body_Version : constant Name_Id := N + 378; + Name_Callable : constant Name_Id := N + 379; + Name_Caller : constant Name_Id := N + 380; + Name_Code_Address : constant Name_Id := N + 381; -- GNAT + Name_Component_Size : constant Name_Id := N + 382; + Name_Compose : constant Name_Id := N + 383; + Name_Constrained : constant Name_Id := N + 384; + Name_Count : constant Name_Id := N + 385; + Name_Default_Bit_Order : constant Name_Id := N + 386; -- GNAT + Name_Definite : constant Name_Id := N + 387; + Name_Delta : constant Name_Id := N + 388; + Name_Denorm : constant Name_Id := N + 389; + Name_Digits : constant Name_Id := N + 390; + Name_Elaborated : constant Name_Id := N + 391; -- GNAT + Name_Emax : constant Name_Id := N + 392; -- Ada 83 + Name_Enabled : constant Name_Id := N + 393; -- GNAT + Name_Enum_Rep : constant Name_Id := N + 394; -- GNAT + Name_Epsilon : constant Name_Id := N + 395; -- Ada 83 + Name_Exponent : constant Name_Id := N + 396; + Name_External_Tag : constant Name_Id := N + 397; + Name_First : constant Name_Id := N + 398; + Name_First_Bit : constant Name_Id := N + 399; + Name_Fixed_Value : constant Name_Id := N + 400; -- GNAT + Name_Fore : constant Name_Id := N + 401; + Name_Has_Access_Values : constant Name_Id := N + 402; -- GNAT + Name_Has_Discriminants : constant Name_Id := N + 403; -- GNAT + Name_Identity : constant Name_Id := N + 404; + Name_Img : constant Name_Id := N + 405; -- GNAT + Name_Integer_Value : constant Name_Id := N + 406; -- GNAT + Name_Large : constant Name_Id := N + 407; -- Ada 83 + Name_Last : constant Name_Id := N + 408; + Name_Last_Bit : constant Name_Id := N + 409; + Name_Leading_Part : constant Name_Id := N + 410; + Name_Length : constant Name_Id := N + 411; + Name_Machine_Emax : constant Name_Id := N + 412; + Name_Machine_Emin : constant Name_Id := N + 413; + Name_Machine_Mantissa : constant Name_Id := N + 414; + Name_Machine_Overflows : constant Name_Id := N + 415; + Name_Machine_Radix : constant Name_Id := N + 416; + Name_Machine_Rounding : constant Name_Id := N + 417; -- Ada 05 + Name_Machine_Rounds : constant Name_Id := N + 418; + Name_Machine_Size : constant Name_Id := N + 419; -- GNAT + Name_Mantissa : constant Name_Id := N + 420; -- Ada 83 + Name_Max_Size_In_Storage_Elements : constant Name_Id := N + 421; + Name_Maximum_Alignment : constant Name_Id := N + 422; -- GNAT + Name_Mechanism_Code : constant Name_Id := N + 423; -- GNAT + Name_Mod : constant Name_Id := N + 424; -- Ada 05 + Name_Model_Emin : constant Name_Id := N + 425; + Name_Model_Epsilon : constant Name_Id := N + 426; + Name_Model_Mantissa : constant Name_Id := N + 427; + Name_Model_Small : constant Name_Id := N + 428; + Name_Modulus : constant Name_Id := N + 429; + Name_Null_Parameter : constant Name_Id := N + 430; -- GNAT + Name_Object_Size : constant Name_Id := N + 431; -- GNAT + Name_Partition_ID : constant Name_Id := N + 432; + Name_Passed_By_Reference : constant Name_Id := N + 433; -- GNAT + Name_Pool_Address : constant Name_Id := N + 434; + Name_Pos : constant Name_Id := N + 435; + Name_Position : constant Name_Id := N + 436; + Name_Priority : constant Name_Id := N + 437; -- Ada 05 + Name_Range : constant Name_Id := N + 438; + Name_Range_Length : constant Name_Id := N + 439; -- GNAT + Name_Round : constant Name_Id := N + 440; + Name_Safe_Emax : constant Name_Id := N + 441; -- Ada 83 + Name_Safe_First : constant Name_Id := N + 442; + Name_Safe_Large : constant Name_Id := N + 443; -- Ada 83 + Name_Safe_Last : constant Name_Id := N + 444; + Name_Safe_Small : constant Name_Id := N + 445; -- Ada 83 + Name_Scale : constant Name_Id := N + 446; + Name_Scaling : constant Name_Id := N + 447; + Name_Signed_Zeros : constant Name_Id := N + 448; + Name_Size : constant Name_Id := N + 449; + Name_Small : constant Name_Id := N + 450; + Name_Storage_Size : constant Name_Id := N + 451; + Name_Storage_Unit : constant Name_Id := N + 452; -- GNAT + Name_Stream_Size : constant Name_Id := N + 453; -- Ada 05 + Name_Tag : constant Name_Id := N + 454; + Name_Target_Name : constant Name_Id := N + 455; -- GNAT + Name_Terminated : constant Name_Id := N + 456; + Name_To_Address : constant Name_Id := N + 457; -- GNAT + Name_Type_Class : constant Name_Id := N + 458; -- GNAT + Name_UET_Address : constant Name_Id := N + 459; -- GNAT + Name_Unbiased_Rounding : constant Name_Id := N + 460; + Name_Unchecked_Access : constant Name_Id := N + 461; + Name_Unconstrained_Array : constant Name_Id := N + 462; + Name_Universal_Literal_String : constant Name_Id := N + 463; -- GNAT + Name_Unrestricted_Access : constant Name_Id := N + 464; -- GNAT + Name_VADS_Size : constant Name_Id := N + 465; -- GNAT + Name_Val : constant Name_Id := N + 466; + Name_Valid : constant Name_Id := N + 467; + Name_Value_Size : constant Name_Id := N + 468; -- GNAT + Name_Version : constant Name_Id := N + 469; + Name_Wchar_T_Size : constant Name_Id := N + 470; -- GNAT + Name_Wide_Wide_Width : constant Name_Id := N + 471; -- Ada 05 + Name_Wide_Width : constant Name_Id := N + 472; + Name_Width : constant Name_Id := N + 473; + Name_Word_Size : constant Name_Id := N + 474; -- GNAT -- Attributes that designate attributes returning renamable functions, -- i.e. functions that return other than a universal value and that -- have non-universal arguments. - First_Renamable_Function_Attribute : constant Name_Id := N + 474; - Name_Adjacent : constant Name_Id := N + 474; - Name_Ceiling : constant Name_Id := N + 475; - Name_Copy_Sign : constant Name_Id := N + 476; - Name_Floor : constant Name_Id := N + 477; - Name_Fraction : constant Name_Id := N + 478; - Name_Image : constant Name_Id := N + 479; - Name_Input : constant Name_Id := N + 480; - Name_Machine : constant Name_Id := N + 481; - Name_Max : constant Name_Id := N + 482; - Name_Min : constant Name_Id := N + 483; - Name_Model : constant Name_Id := N + 484; - Name_Pred : constant Name_Id := N + 485; - Name_Remainder : constant Name_Id := N + 486; - Name_Rounding : constant Name_Id := N + 487; - Name_Succ : constant Name_Id := N + 488; - Name_Truncation : constant Name_Id := N + 489; - Name_Value : constant Name_Id := N + 490; - Name_Wide_Image : constant Name_Id := N + 491; - Name_Wide_Wide_Image : constant Name_Id := N + 492; - Name_Wide_Value : constant Name_Id := N + 493; - Name_Wide_Wide_Value : constant Name_Id := N + 494; - Last_Renamable_Function_Attribute : constant Name_Id := N + 494; + First_Renamable_Function_Attribute : constant Name_Id := N + 475; + Name_Adjacent : constant Name_Id := N + 475; + Name_Ceiling : constant Name_Id := N + 476; + Name_Copy_Sign : constant Name_Id := N + 477; + Name_Floor : constant Name_Id := N + 478; + Name_Fraction : constant Name_Id := N + 479; + Name_Image : constant Name_Id := N + 480; + Name_Input : constant Name_Id := N + 481; + Name_Machine : constant Name_Id := N + 482; + Name_Max : constant Name_Id := N + 483; + Name_Min : constant Name_Id := N + 484; + Name_Model : constant Name_Id := N + 485; + Name_Pred : constant Name_Id := N + 486; + Name_Remainder : constant Name_Id := N + 487; + Name_Rounding : constant Name_Id := N + 488; + Name_Succ : constant Name_Id := N + 489; + Name_Truncation : constant Name_Id := N + 490; + Name_Value : constant Name_Id := N + 491; + Name_Wide_Image : constant Name_Id := N + 492; + Name_Wide_Wide_Image : constant Name_Id := N + 493; + Name_Wide_Value : constant Name_Id := N + 494; + Name_Wide_Wide_Value : constant Name_Id := N + 495; + Last_Renamable_Function_Attribute : constant Name_Id := N + 495; -- Attributes that designate procedures - First_Procedure_Attribute : constant Name_Id := N + 495; - Name_Output : constant Name_Id := N + 495; - Name_Read : constant Name_Id := N + 496; - Name_Write : constant Name_Id := N + 497; - Last_Procedure_Attribute : constant Name_Id := N + 497; + First_Procedure_Attribute : constant Name_Id := N + 496; + Name_Output : constant Name_Id := N + 496; + Name_Read : constant Name_Id := N + 497; + Name_Write : constant Name_Id := N + 498; + Last_Procedure_Attribute : constant Name_Id := N + 498; -- Remaining attributes are ones that return entities - First_Entity_Attribute_Name : constant Name_Id := N + 498; - Name_Elab_Body : constant Name_Id := N + 498; -- GNAT - Name_Elab_Spec : constant Name_Id := N + 499; -- GNAT - Name_Storage_Pool : constant Name_Id := N + 500; + First_Entity_Attribute_Name : constant Name_Id := N + 499; + Name_Elab_Body : constant Name_Id := N + 499; -- GNAT + Name_Elab_Spec : constant Name_Id := N + 500; -- GNAT + Name_Storage_Pool : constant Name_Id := N + 501; -- These attributes are the ones that return types - First_Type_Attribute_Name : constant Name_Id := N + 501; - Name_Base : constant Name_Id := N + 501; - Name_Class : constant Name_Id := N + 502; - Name_Stub_Type : constant Name_Id := N + 503; - Last_Type_Attribute_Name : constant Name_Id := N + 503; - Last_Entity_Attribute_Name : constant Name_Id := N + 503; - Last_Attribute_Name : constant Name_Id := N + 503; + First_Type_Attribute_Name : constant Name_Id := N + 502; + Name_Base : constant Name_Id := N + 502; + Name_Class : constant Name_Id := N + 503; + Name_Stub_Type : constant Name_Id := N + 504; + Last_Type_Attribute_Name : constant Name_Id := N + 504; + Last_Entity_Attribute_Name : constant Name_Id := N + 504; + Last_Attribute_Name : constant Name_Id := N + 504; -- Names of recognized locking policy identifiers @@ -823,10 +824,10 @@ package Snames is -- name (e.g. C for Ceiling_Locking). If new policy names are added, -- the first character must be distinct. - First_Locking_Policy_Name : constant Name_Id := N + 504; - Name_Ceiling_Locking : constant Name_Id := N + 504; - Name_Inheritance_Locking : constant Name_Id := N + 505; - Last_Locking_Policy_Name : constant Name_Id := N + 505; + First_Locking_Policy_Name : constant Name_Id := N + 505; + Name_Ceiling_Locking : constant Name_Id := N + 505; + Name_Inheritance_Locking : constant Name_Id := N + 506; + Last_Locking_Policy_Name : constant Name_Id := N + 506; -- Names of recognized queuing policy identifiers @@ -834,10 +835,10 @@ package Snames is -- name (e.g. F for FIFO_Queuing). If new policy names are added, -- the first character must be distinct. - First_Queuing_Policy_Name : constant Name_Id := N + 506; - Name_FIFO_Queuing : constant Name_Id := N + 506; - Name_Priority_Queuing : constant Name_Id := N + 507; - Last_Queuing_Policy_Name : constant Name_Id := N + 507; + First_Queuing_Policy_Name : constant Name_Id := N + 507; + Name_FIFO_Queuing : constant Name_Id := N + 507; + Name_Priority_Queuing : constant Name_Id := N + 508; + Last_Queuing_Policy_Name : constant Name_Id := N + 508; -- Names of recognized task dispatching policy identifiers @@ -845,271 +846,271 @@ package Snames is -- name (e.g. F for FIFO_Within_Priorities). If new policy names -- are added, the first character must be distinct. - First_Task_Dispatching_Policy_Name : constant Name_Id := N + 508; - Name_EDF_Across_Priorities : constant Name_Id := N + 508; - Name_FIFO_Within_Priorities : constant Name_Id := N + 509; - Name_Non_Preemptive_Within_Priorities : constant Name_Id := N + 510; - Name_Round_Robin_Within_Priorities : constant Name_Id := N + 511; - Last_Task_Dispatching_Policy_Name : constant Name_Id := N + 511; + First_Task_Dispatching_Policy_Name : constant Name_Id := N + 509; + Name_EDF_Across_Priorities : constant Name_Id := N + 509; + Name_FIFO_Within_Priorities : constant Name_Id := N + 510; + Name_Non_Preemptive_Within_Priorities : constant Name_Id := N + 511; + Name_Round_Robin_Within_Priorities : constant Name_Id := N + 512; + Last_Task_Dispatching_Policy_Name : constant Name_Id := N + 512; -- Names of recognized checks for pragma Suppress - First_Check_Name : constant Name_Id := N + 512; - Name_Access_Check : constant Name_Id := N + 512; - Name_Accessibility_Check : constant Name_Id := N + 513; - Name_Alignment_Check : constant Name_Id := N + 514; -- GNAT - Name_Discriminant_Check : constant Name_Id := N + 515; - Name_Division_Check : constant Name_Id := N + 516; - Name_Elaboration_Check : constant Name_Id := N + 517; - Name_Index_Check : constant Name_Id := N + 518; - Name_Length_Check : constant Name_Id := N + 519; - Name_Overflow_Check : constant Name_Id := N + 520; - Name_Range_Check : constant Name_Id := N + 521; - Name_Storage_Check : constant Name_Id := N + 522; - Name_Tag_Check : constant Name_Id := N + 523; - Name_Validity_Check : constant Name_Id := N + 524; -- GNAT - Name_All_Checks : constant Name_Id := N + 525; - Last_Check_Name : constant Name_Id := N + 525; + First_Check_Name : constant Name_Id := N + 513; + Name_Access_Check : constant Name_Id := N + 513; + Name_Accessibility_Check : constant Name_Id := N + 514; + Name_Alignment_Check : constant Name_Id := N + 515; -- GNAT + Name_Discriminant_Check : constant Name_Id := N + 516; + Name_Division_Check : constant Name_Id := N + 517; + Name_Elaboration_Check : constant Name_Id := N + 518; + Name_Index_Check : constant Name_Id := N + 519; + Name_Length_Check : constant Name_Id := N + 520; + Name_Overflow_Check : constant Name_Id := N + 521; + Name_Range_Check : constant Name_Id := N + 522; + Name_Storage_Check : constant Name_Id := N + 523; + Name_Tag_Check : constant Name_Id := N + 524; + Name_Validity_Check : constant Name_Id := N + 525; -- GNAT + Name_All_Checks : constant Name_Id := N + 526; + Last_Check_Name : constant Name_Id := N + 526; -- Names corresponding to reserved keywords, excluding those already -- declared in the attribute list (Access, Delta, Digits, Mod, Range). - Name_Abort : constant Name_Id := N + 526; - Name_Abs : constant Name_Id := N + 527; - Name_Accept : constant Name_Id := N + 528; - Name_And : constant Name_Id := N + 529; - Name_All : constant Name_Id := N + 530; - Name_Array : constant Name_Id := N + 531; - Name_At : constant Name_Id := N + 532; - Name_Begin : constant Name_Id := N + 533; - Name_Body : constant Name_Id := N + 534; - Name_Case : constant Name_Id := N + 535; - Name_Constant : constant Name_Id := N + 536; - Name_Declare : constant Name_Id := N + 537; - Name_Delay : constant Name_Id := N + 538; - Name_Do : constant Name_Id := N + 539; - Name_Else : constant Name_Id := N + 540; - Name_Elsif : constant Name_Id := N + 541; - Name_End : constant Name_Id := N + 542; - Name_Entry : constant Name_Id := N + 543; - Name_Exception : constant Name_Id := N + 544; - Name_Exit : constant Name_Id := N + 545; - Name_For : constant Name_Id := N + 546; - Name_Function : constant Name_Id := N + 547; - Name_Generic : constant Name_Id := N + 548; - Name_Goto : constant Name_Id := N + 549; - Name_If : constant Name_Id := N + 550; - Name_In : constant Name_Id := N + 551; - Name_Is : constant Name_Id := N + 552; - Name_Limited : constant Name_Id := N + 553; - Name_Loop : constant Name_Id := N + 554; - Name_New : constant Name_Id := N + 555; - Name_Not : constant Name_Id := N + 556; - Name_Null : constant Name_Id := N + 557; - Name_Of : constant Name_Id := N + 558; - Name_Or : constant Name_Id := N + 559; - Name_Others : constant Name_Id := N + 560; - Name_Out : constant Name_Id := N + 561; - Name_Package : constant Name_Id := N + 562; - Name_Pragma : constant Name_Id := N + 563; - Name_Private : constant Name_Id := N + 564; - Name_Procedure : constant Name_Id := N + 565; - Name_Raise : constant Name_Id := N + 566; - Name_Record : constant Name_Id := N + 567; - Name_Rem : constant Name_Id := N + 568; - Name_Renames : constant Name_Id := N + 569; - Name_Return : constant Name_Id := N + 570; - Name_Reverse : constant Name_Id := N + 571; - Name_Select : constant Name_Id := N + 572; - Name_Separate : constant Name_Id := N + 573; - Name_Subtype : constant Name_Id := N + 574; - Name_Task : constant Name_Id := N + 575; - Name_Terminate : constant Name_Id := N + 576; - Name_Then : constant Name_Id := N + 577; - Name_Type : constant Name_Id := N + 578; - Name_Use : constant Name_Id := N + 579; - Name_When : constant Name_Id := N + 580; - Name_While : constant Name_Id := N + 581; - Name_With : constant Name_Id := N + 582; - Name_Xor : constant Name_Id := N + 583; + Name_Abort : constant Name_Id := N + 527; + Name_Abs : constant Name_Id := N + 528; + Name_Accept : constant Name_Id := N + 529; + Name_And : constant Name_Id := N + 530; + Name_All : constant Name_Id := N + 531; + Name_Array : constant Name_Id := N + 532; + Name_At : constant Name_Id := N + 533; + Name_Begin : constant Name_Id := N + 534; + Name_Body : constant Name_Id := N + 535; + Name_Case : constant Name_Id := N + 536; + Name_Constant : constant Name_Id := N + 537; + Name_Declare : constant Name_Id := N + 538; + Name_Delay : constant Name_Id := N + 539; + Name_Do : constant Name_Id := N + 540; + Name_Else : constant Name_Id := N + 541; + Name_Elsif : constant Name_Id := N + 542; + Name_End : constant Name_Id := N + 543; + Name_Entry : constant Name_Id := N + 544; + Name_Exception : constant Name_Id := N + 545; + Name_Exit : constant Name_Id := N + 546; + Name_For : constant Name_Id := N + 547; + Name_Function : constant Name_Id := N + 548; + Name_Generic : constant Name_Id := N + 549; + Name_Goto : constant Name_Id := N + 550; + Name_If : constant Name_Id := N + 551; + Name_In : constant Name_Id := N + 552; + Name_Is : constant Name_Id := N + 553; + Name_Limited : constant Name_Id := N + 554; + Name_Loop : constant Name_Id := N + 555; + Name_New : constant Name_Id := N + 556; + Name_Not : constant Name_Id := N + 557; + Name_Null : constant Name_Id := N + 558; + Name_Of : constant Name_Id := N + 559; + Name_Or : constant Name_Id := N + 560; + Name_Others : constant Name_Id := N + 561; + Name_Out : constant Name_Id := N + 562; + Name_Package : constant Name_Id := N + 563; + Name_Pragma : constant Name_Id := N + 564; + Name_Private : constant Name_Id := N + 565; + Name_Procedure : constant Name_Id := N + 566; + Name_Raise : constant Name_Id := N + 567; + Name_Record : constant Name_Id := N + 568; + Name_Rem : constant Name_Id := N + 569; + Name_Renames : constant Name_Id := N + 570; + Name_Return : constant Name_Id := N + 571; + Name_Reverse : constant Name_Id := N + 572; + Name_Select : constant Name_Id := N + 573; + Name_Separate : constant Name_Id := N + 574; + Name_Subtype : constant Name_Id := N + 575; + Name_Task : constant Name_Id := N + 576; + Name_Terminate : constant Name_Id := N + 577; + Name_Then : constant Name_Id := N + 578; + Name_Type : constant Name_Id := N + 579; + Name_Use : constant Name_Id := N + 580; + Name_When : constant Name_Id := N + 581; + Name_While : constant Name_Id := N + 582; + Name_With : constant Name_Id := N + 583; + Name_Xor : constant Name_Id := N + 584; -- Names of intrinsic subprograms -- Note: Asm is missing from this list, since Asm is a legitimate -- convention name. So is To_Adress, which is a GNAT attribute. - First_Intrinsic_Name : constant Name_Id := N + 584; - Name_Divide : constant Name_Id := N + 584; - Name_Enclosing_Entity : constant Name_Id := N + 585; - Name_Exception_Information : constant Name_Id := N + 586; - Name_Exception_Message : constant Name_Id := N + 587; - Name_Exception_Name : constant Name_Id := N + 588; - Name_File : constant Name_Id := N + 589; - Name_Generic_Dispatching_Constructor : constant Name_Id := N + 590; - Name_Import_Address : constant Name_Id := N + 591; - Name_Import_Largest_Value : constant Name_Id := N + 592; - Name_Import_Value : constant Name_Id := N + 593; - Name_Is_Negative : constant Name_Id := N + 594; - Name_Line : constant Name_Id := N + 595; - Name_Rotate_Left : constant Name_Id := N + 596; - Name_Rotate_Right : constant Name_Id := N + 597; - Name_Shift_Left : constant Name_Id := N + 598; - Name_Shift_Right : constant Name_Id := N + 599; - Name_Shift_Right_Arithmetic : constant Name_Id := N + 600; - Name_Source_Location : constant Name_Id := N + 601; - Name_Unchecked_Conversion : constant Name_Id := N + 602; - Name_Unchecked_Deallocation : constant Name_Id := N + 603; - Name_To_Pointer : constant Name_Id := N + 604; - Last_Intrinsic_Name : constant Name_Id := N + 604; + First_Intrinsic_Name : constant Name_Id := N + 585; + Name_Divide : constant Name_Id := N + 585; + Name_Enclosing_Entity : constant Name_Id := N + 586; + Name_Exception_Information : constant Name_Id := N + 587; + Name_Exception_Message : constant Name_Id := N + 588; + Name_Exception_Name : constant Name_Id := N + 589; + Name_File : constant Name_Id := N + 590; + Name_Generic_Dispatching_Constructor : constant Name_Id := N + 591; + Name_Import_Address : constant Name_Id := N + 592; + Name_Import_Largest_Value : constant Name_Id := N + 593; + Name_Import_Value : constant Name_Id := N + 594; + Name_Is_Negative : constant Name_Id := N + 595; + Name_Line : constant Name_Id := N + 596; + Name_Rotate_Left : constant Name_Id := N + 597; + Name_Rotate_Right : constant Name_Id := N + 598; + Name_Shift_Left : constant Name_Id := N + 599; + Name_Shift_Right : constant Name_Id := N + 600; + Name_Shift_Right_Arithmetic : constant Name_Id := N + 601; + Name_Source_Location : constant Name_Id := N + 602; + Name_Unchecked_Conversion : constant Name_Id := N + 603; + Name_Unchecked_Deallocation : constant Name_Id := N + 604; + Name_To_Pointer : constant Name_Id := N + 605; + Last_Intrinsic_Name : constant Name_Id := N + 605; -- Names used in processing intrinsic calls - Name_Free : constant Name_Id := N + 605; + Name_Free : constant Name_Id := N + 606; -- Reserved words used only in Ada 95 - First_95_Reserved_Word : constant Name_Id := N + 606; - Name_Abstract : constant Name_Id := N + 606; - Name_Aliased : constant Name_Id := N + 607; - Name_Protected : constant Name_Id := N + 608; - Name_Until : constant Name_Id := N + 609; - Name_Requeue : constant Name_Id := N + 610; - Name_Tagged : constant Name_Id := N + 611; - Last_95_Reserved_Word : constant Name_Id := N + 611; + First_95_Reserved_Word : constant Name_Id := N + 607; + Name_Abstract : constant Name_Id := N + 607; + Name_Aliased : constant Name_Id := N + 608; + Name_Protected : constant Name_Id := N + 609; + Name_Until : constant Name_Id := N + 610; + Name_Requeue : constant Name_Id := N + 611; + Name_Tagged : constant Name_Id := N + 612; + Last_95_Reserved_Word : constant Name_Id := N + 612; subtype Ada_95_Reserved_Words is Name_Id range First_95_Reserved_Word .. Last_95_Reserved_Word; -- Miscellaneous names used in semantic checking - Name_Raise_Exception : constant Name_Id := N + 612; + Name_Raise_Exception : constant Name_Id := N + 613; -- Additional reserved words and identifiers used in GNAT Project Files -- Note that Name_External is already previously declared - Name_Ada_Roots : constant Name_Id := N + 613; - Name_Archive_Builder : constant Name_Id := N + 614; - Name_Archive_Indexer : constant Name_Id := N + 615; - Name_Archive_Suffix : constant Name_Id := N + 616; - Name_Binder : constant Name_Id := N + 617; - Name_Binder_Prefix : constant Name_Id := N + 618; - Name_Body_Suffix : constant Name_Id := N + 619; - Name_Builder : constant Name_Id := N + 620; - Name_Builder_Switches : constant Name_Id := N + 621; - Name_Compiler : constant Name_Id := N + 622; - Name_Compiler_Kind : constant Name_Id := N + 623; - Name_Config_Body_File_Name : constant Name_Id := N + 624; - Name_Config_Body_File_Name_Pattern : constant Name_Id := N + 625; - Name_Config_File_Switches : constant Name_Id := N + 626; - Name_Config_File_Unique : constant Name_Id := N + 627; - Name_Config_Spec_File_Name : constant Name_Id := N + 628; - Name_Config_Spec_File_Name_Pattern : constant Name_Id := N + 629; - Name_Cross_Reference : constant Name_Id := N + 630; - Name_Default_Language : constant Name_Id := N + 631; - Name_Default_Switches : constant Name_Id := N + 632; - Name_Dependency_Driver : constant Name_Id := N + 633; - Name_Dependency_File_Kind : constant Name_Id := N + 634; - Name_Dependency_Switches : constant Name_Id := N + 635; - Name_Driver : constant Name_Id := N + 636; - Name_Excluded_Source_Dirs : constant Name_Id := N + 637; - Name_Excluded_Source_Files : constant Name_Id := N + 638; - Name_Exec_Dir : constant Name_Id := N + 639; - Name_Executable : constant Name_Id := N + 640; - Name_Executable_Suffix : constant Name_Id := N + 641; - Name_Extends : constant Name_Id := N + 642; - Name_Externally_Built : constant Name_Id := N + 643; - Name_Finder : constant Name_Id := N + 644; - Name_Global_Configuration_Pragmas : constant Name_Id := N + 645; - Name_Global_Config_File : constant Name_Id := N + 646; - Name_Gnatls : constant Name_Id := N + 647; - Name_Gnatstub : constant Name_Id := N + 648; - Name_Implementation : constant Name_Id := N + 649; - Name_Implementation_Exceptions : constant Name_Id := N + 650; - Name_Implementation_Suffix : constant Name_Id := N + 651; - Name_Include_Option : constant Name_Id := N + 652; - Name_Include_Path : constant Name_Id := N + 653; - Name_Include_Path_File : constant Name_Id := N + 654; - Name_Language_Kind : constant Name_Id := N + 655; - Name_Language_Processing : constant Name_Id := N + 656; - Name_Languages : constant Name_Id := N + 657; - Name_Library_Ali_Dir : constant Name_Id := N + 658; - Name_Library_Auto_Init : constant Name_Id := N + 659; - Name_Library_Auto_Init_Supported : constant Name_Id := N + 660; - Name_Library_Builder : constant Name_Id := N + 661; - Name_Library_Dir : constant Name_Id := N + 662; - Name_Library_GCC : constant Name_Id := N + 663; - Name_Library_Interface : constant Name_Id := N + 664; - Name_Library_Kind : constant Name_Id := N + 665; - Name_Library_Name : constant Name_Id := N + 666; - Name_Library_Major_Minor_Id_Supported : constant Name_Id := N + 667; - Name_Library_Options : constant Name_Id := N + 668; - Name_Library_Partial_Linker : constant Name_Id := N + 669; - Name_Library_Reference_Symbol_File : constant Name_Id := N + 670; - Name_Library_Src_Dir : constant Name_Id := N + 671; - Name_Library_Support : constant Name_Id := N + 672; - Name_Library_Symbol_File : constant Name_Id := N + 673; - Name_Library_Symbol_Policy : constant Name_Id := N + 674; - Name_Library_Version : constant Name_Id := N + 675; - Name_Library_Version_Switches : constant Name_Id := N + 676; - Name_Linker : constant Name_Id := N + 677; - Name_Linker_Executable_Option : constant Name_Id := N + 678; - Name_Linker_Lib_Dir_Option : constant Name_Id := N + 679; - Name_Linker_Lib_Name_Option : constant Name_Id := N + 680; - Name_Local_Config_File : constant Name_Id := N + 681; - Name_Local_Configuration_Pragmas : constant Name_Id := N + 682; - Name_Locally_Removed_Files : constant Name_Id := N + 683; - Name_Mapping_File_Switches : constant Name_Id := N + 684; - Name_Mapping_Spec_Suffix : constant Name_Id := N + 685; - Name_Mapping_Body_Suffix : constant Name_Id := N + 686; - Name_Metrics : constant Name_Id := N + 687; - Name_Naming : constant Name_Id := N + 688; - Name_Objects_Path : constant Name_Id := N + 689; - Name_Objects_Path_File : constant Name_Id := N + 690; - Name_Object_Dir : constant Name_Id := N + 691; - Name_Pic_Option : constant Name_Id := N + 692; - Name_Pretty_Printer : constant Name_Id := N + 693; - Name_Prefix : constant Name_Id := N + 694; - Name_Project : constant Name_Id := N + 695; - Name_Roots : constant Name_Id := N + 696; - Name_Required_Switches : constant Name_Id := N + 697; - Name_Run_Path_Option : constant Name_Id := N + 698; - Name_Runtime_Project : constant Name_Id := N + 699; - Name_Shared_Library_Minimum_Switches : constant Name_Id := N + 700; - Name_Shared_Library_Prefix : constant Name_Id := N + 701; - Name_Shared_Library_Suffix : constant Name_Id := N + 702; - Name_Separate_Suffix : constant Name_Id := N + 703; - Name_Source_Dirs : constant Name_Id := N + 704; - Name_Source_Files : constant Name_Id := N + 705; - Name_Source_List_File : constant Name_Id := N + 706; - Name_Spec : constant Name_Id := N + 707; - Name_Spec_Suffix : constant Name_Id := N + 708; - Name_Specification : constant Name_Id := N + 709; - Name_Specification_Exceptions : constant Name_Id := N + 710; - Name_Specification_Suffix : constant Name_Id := N + 711; - Name_Stack : constant Name_Id := N + 712; - Name_Switches : constant Name_Id := N + 713; - Name_Symbolic_Link_Supported : constant Name_Id := N + 714; - Name_Toolchain_Description : constant Name_Id := N + 715; - Name_Toolchain_Version : constant Name_Id := N + 716; + Name_Ada_Roots : constant Name_Id := N + 614; + Name_Archive_Builder : constant Name_Id := N + 615; + Name_Archive_Indexer : constant Name_Id := N + 616; + Name_Archive_Suffix : constant Name_Id := N + 617; + Name_Binder : constant Name_Id := N + 618; + Name_Binder_Prefix : constant Name_Id := N + 619; + Name_Body_Suffix : constant Name_Id := N + 620; + Name_Builder : constant Name_Id := N + 621; + Name_Builder_Switches : constant Name_Id := N + 622; + Name_Compiler : constant Name_Id := N + 623; + Name_Compiler_Kind : constant Name_Id := N + 624; + Name_Config_Body_File_Name : constant Name_Id := N + 625; + Name_Config_Body_File_Name_Pattern : constant Name_Id := N + 626; + Name_Config_File_Switches : constant Name_Id := N + 627; + Name_Config_File_Unique : constant Name_Id := N + 628; + Name_Config_Spec_File_Name : constant Name_Id := N + 629; + Name_Config_Spec_File_Name_Pattern : constant Name_Id := N + 630; + Name_Cross_Reference : constant Name_Id := N + 631; + Name_Default_Language : constant Name_Id := N + 632; + Name_Default_Switches : constant Name_Id := N + 633; + Name_Dependency_Driver : constant Name_Id := N + 634; + Name_Dependency_File_Kind : constant Name_Id := N + 635; + Name_Dependency_Switches : constant Name_Id := N + 636; + Name_Driver : constant Name_Id := N + 637; + Name_Excluded_Source_Dirs : constant Name_Id := N + 638; + Name_Excluded_Source_Files : constant Name_Id := N + 639; + Name_Exec_Dir : constant Name_Id := N + 640; + Name_Executable : constant Name_Id := N + 641; + Name_Executable_Suffix : constant Name_Id := N + 642; + Name_Extends : constant Name_Id := N + 643; + Name_Externally_Built : constant Name_Id := N + 644; + Name_Finder : constant Name_Id := N + 645; + Name_Global_Configuration_Pragmas : constant Name_Id := N + 646; + Name_Global_Config_File : constant Name_Id := N + 647; + Name_Gnatls : constant Name_Id := N + 648; + Name_Gnatstub : constant Name_Id := N + 649; + Name_Implementation : constant Name_Id := N + 650; + Name_Implementation_Exceptions : constant Name_Id := N + 651; + Name_Implementation_Suffix : constant Name_Id := N + 652; + Name_Include_Option : constant Name_Id := N + 653; + Name_Include_Path : constant Name_Id := N + 654; + Name_Include_Path_File : constant Name_Id := N + 655; + Name_Language_Kind : constant Name_Id := N + 656; + Name_Language_Processing : constant Name_Id := N + 657; + Name_Languages : constant Name_Id := N + 658; + Name_Library_Ali_Dir : constant Name_Id := N + 659; + Name_Library_Auto_Init : constant Name_Id := N + 660; + Name_Library_Auto_Init_Supported : constant Name_Id := N + 661; + Name_Library_Builder : constant Name_Id := N + 662; + Name_Library_Dir : constant Name_Id := N + 663; + Name_Library_GCC : constant Name_Id := N + 664; + Name_Library_Interface : constant Name_Id := N + 665; + Name_Library_Kind : constant Name_Id := N + 666; + Name_Library_Name : constant Name_Id := N + 667; + Name_Library_Major_Minor_Id_Supported : constant Name_Id := N + 668; + Name_Library_Options : constant Name_Id := N + 669; + Name_Library_Partial_Linker : constant Name_Id := N + 670; + Name_Library_Reference_Symbol_File : constant Name_Id := N + 671; + Name_Library_Src_Dir : constant Name_Id := N + 672; + Name_Library_Support : constant Name_Id := N + 673; + Name_Library_Symbol_File : constant Name_Id := N + 674; + Name_Library_Symbol_Policy : constant Name_Id := N + 675; + Name_Library_Version : constant Name_Id := N + 676; + Name_Library_Version_Switches : constant Name_Id := N + 677; + Name_Linker : constant Name_Id := N + 678; + Name_Linker_Executable_Option : constant Name_Id := N + 679; + Name_Linker_Lib_Dir_Option : constant Name_Id := N + 680; + Name_Linker_Lib_Name_Option : constant Name_Id := N + 681; + Name_Local_Config_File : constant Name_Id := N + 682; + Name_Local_Configuration_Pragmas : constant Name_Id := N + 683; + Name_Locally_Removed_Files : constant Name_Id := N + 684; + Name_Mapping_File_Switches : constant Name_Id := N + 685; + Name_Mapping_Spec_Suffix : constant Name_Id := N + 686; + Name_Mapping_Body_Suffix : constant Name_Id := N + 687; + Name_Metrics : constant Name_Id := N + 688; + Name_Naming : constant Name_Id := N + 689; + Name_Objects_Path : constant Name_Id := N + 690; + Name_Objects_Path_File : constant Name_Id := N + 691; + Name_Object_Dir : constant Name_Id := N + 692; + Name_Pic_Option : constant Name_Id := N + 693; + Name_Pretty_Printer : constant Name_Id := N + 694; + Name_Prefix : constant Name_Id := N + 695; + Name_Project : constant Name_Id := N + 696; + Name_Roots : constant Name_Id := N + 697; + Name_Required_Switches : constant Name_Id := N + 698; + Name_Run_Path_Option : constant Name_Id := N + 699; + Name_Runtime_Project : constant Name_Id := N + 700; + Name_Shared_Library_Minimum_Switches : constant Name_Id := N + 701; + Name_Shared_Library_Prefix : constant Name_Id := N + 702; + Name_Shared_Library_Suffix : constant Name_Id := N + 703; + Name_Separate_Suffix : constant Name_Id := N + 704; + Name_Source_Dirs : constant Name_Id := N + 705; + Name_Source_Files : constant Name_Id := N + 706; + Name_Source_List_File : constant Name_Id := N + 707; + Name_Spec : constant Name_Id := N + 708; + Name_Spec_Suffix : constant Name_Id := N + 709; + Name_Specification : constant Name_Id := N + 710; + Name_Specification_Exceptions : constant Name_Id := N + 711; + Name_Specification_Suffix : constant Name_Id := N + 712; + Name_Stack : constant Name_Id := N + 713; + Name_Switches : constant Name_Id := N + 714; + Name_Symbolic_Link_Supported : constant Name_Id := N + 715; + Name_Toolchain_Description : constant Name_Id := N + 716; + Name_Toolchain_Version : constant Name_Id := N + 717; -- Other miscellaneous names used in front end - Name_Unaligned_Valid : constant Name_Id := N + 717; + Name_Unaligned_Valid : constant Name_Id := N + 718; -- Ada 2005 reserved words - First_2005_Reserved_Word : constant Name_Id := N + 718; - Name_Interface : constant Name_Id := N + 718; - Name_Overriding : constant Name_Id := N + 719; - Name_Synchronized : constant Name_Id := N + 720; - Last_2005_Reserved_Word : constant Name_Id := N + 720; + First_2005_Reserved_Word : constant Name_Id := N + 719; + Name_Interface : constant Name_Id := N + 719; + Name_Overriding : constant Name_Id := N + 720; + Name_Synchronized : constant Name_Id := N + 721; + Last_2005_Reserved_Word : constant Name_Id := N + 721; subtype Ada_2005_Reserved_Words is Name_Id range First_2005_Reserved_Word .. Last_2005_Reserved_Word; -- Mark last defined name for consistency check in Snames body - Last_Predefined_Name : constant Name_Id := N + 720; + Last_Predefined_Name : constant Name_Id := N + 721; --------------------------------------- -- Subtypes Defining Name Categories -- @@ -1339,6 +1340,7 @@ package Snames is Pragma_Check_Name, Pragma_Compile_Time_Error, Pragma_Compile_Time_Warning, + Pragma_Compiler_Unit, Pragma_Component_Alignment, Pragma_Convention_Identifier, Pragma_Debug_Policy, diff --git a/gcc/ada/snames.h b/gcc/ada/snames.h index 9f145c5153f..f94e0a2ef64 100644 --- a/gcc/ada/snames.h +++ b/gcc/ada/snames.h @@ -224,155 +224,156 @@ extern unsigned char Get_Pragma_Id (int); #define Pragma_Check_Name 6 #define Pragma_Compile_Time_Error 7 #define Pragma_Compile_Time_Warning 8 -#define Pragma_Component_Alignment 9 -#define Pragma_Convention_Identifier 10 -#define Pragma_Debug_Policy 11 -#define Pragma_Detect_Blocking 12 -#define Pragma_Discard_Names 13 -#define Pragma_Elaboration_Checks 14 -#define Pragma_Eliminate 15 -#define Pragma_Extend_System 16 -#define Pragma_Extensions_Allowed 17 -#define Pragma_External_Name_Casing 18 -#define Pragma_Float_Representation 19 -#define Pragma_Implicit_Packing 20 -#define Pragma_Initialize_Scalars 21 -#define Pragma_Interrupt_State 22 -#define Pragma_License 23 -#define Pragma_Locking_Policy 24 -#define Pragma_Long_Float 25 -#define Pragma_No_Run_Time 26 -#define Pragma_No_Strict_Aliasing 27 -#define Pragma_Normalize_Scalars 28 -#define Pragma_Polling 29 -#define Pragma_Persistent_BSS 30 -#define Pragma_Priority_Specific_Dispatching 31 -#define Pragma_Profile 32 -#define Pragma_Profile_Warnings 33 -#define Pragma_Propagate_Exceptions 34 -#define Pragma_Queuing_Policy 35 -#define Pragma_Ravenscar 36 -#define Pragma_Restricted_Run_Time 37 -#define Pragma_Restrictions 38 -#define Pragma_Restriction_Warnings 39 -#define Pragma_Reviewable 40 -#define Pragma_Source_File_Name 41 -#define Pragma_Source_File_Name_Project 42 -#define Pragma_Style_Checks 43 -#define Pragma_Suppress 44 -#define Pragma_Suppress_Exception_Locations 45 -#define Pragma_Task_Dispatching_Policy 46 -#define Pragma_Universal_Data 47 -#define Pragma_Unsuppress 48 -#define Pragma_Use_VADS_Size 49 -#define Pragma_Validity_Checks 50 -#define Pragma_Warnings 51 -#define Pragma_Wide_Character_Encoding 52 -#define Pragma_Abort_Defer 53 -#define Pragma_All_Calls_Remote 54 -#define Pragma_Annotate 55 -#define Pragma_Assert 56 -#define Pragma_Asynchronous 57 -#define Pragma_Atomic 58 -#define Pragma_Atomic_Components 59 -#define Pragma_Attach_Handler 60 -#define Pragma_CIL_Constructor 61 -#define Pragma_Comment 62 -#define Pragma_Common_Object 63 -#define Pragma_Complete_Representation 64 -#define Pragma_Complex_Representation 65 -#define Pragma_Controlled 66 -#define Pragma_Convention 67 -#define Pragma_CPP_Class 68 -#define Pragma_CPP_Constructor 69 -#define Pragma_CPP_Virtual 70 -#define Pragma_CPP_Vtable 71 -#define Pragma_Debug 72 -#define Pragma_Elaborate 73 -#define Pragma_Elaborate_All 74 -#define Pragma_Elaborate_Body 75 -#define Pragma_Export 76 -#define Pragma_Export_Exception 77 -#define Pragma_Export_Function 78 -#define Pragma_Export_Object 79 -#define Pragma_Export_Procedure 80 -#define Pragma_Export_Value 81 -#define Pragma_Export_Valued_Procedure 82 -#define Pragma_External 83 -#define Pragma_Finalize_Storage_Only 84 -#define Pragma_Ident 85 -#define Pragma_Import 86 -#define Pragma_Import_Exception 87 -#define Pragma_Import_Function 88 -#define Pragma_Import_Object 89 -#define Pragma_Import_Procedure 90 -#define Pragma_Import_Valued_Procedure 91 -#define Pragma_Inline 92 -#define Pragma_Inline_Always 93 -#define Pragma_Inline_Generic 94 -#define Pragma_Inspection_Point 95 -#define Pragma_Interface_Name 96 -#define Pragma_Interrupt_Handler 97 -#define Pragma_Interrupt_Priority 98 -#define Pragma_Java_Constructor 99 -#define Pragma_Java_Interface 100 -#define Pragma_Keep_Names 101 -#define Pragma_Link_With 102 -#define Pragma_Linker_Alias 103 -#define Pragma_Linker_Constructor 104 -#define Pragma_Linker_Destructor 105 -#define Pragma_Linker_Options 106 -#define Pragma_Linker_Section 107 -#define Pragma_List 108 -#define Pragma_Machine_Attribute 109 -#define Pragma_Main 110 -#define Pragma_Main_Storage 111 -#define Pragma_Memory_Size 112 -#define Pragma_No_Body 113 -#define Pragma_No_Return 114 -#define Pragma_Obsolescent 115 -#define Pragma_Optimize 116 -#define Pragma_Pack 117 -#define Pragma_Page 118 -#define Pragma_Passive 119 -#define Pragma_Preelaborable_Initialization 120 -#define Pragma_Preelaborate 121 -#define Pragma_Preelaborate_05 122 -#define Pragma_Psect_Object 123 -#define Pragma_Pure 124 -#define Pragma_Pure_05 125 -#define Pragma_Pure_Function 126 -#define Pragma_Remote_Call_Interface 127 -#define Pragma_Remote_Types 128 -#define Pragma_Share_Generic 129 -#define Pragma_Shared 130 -#define Pragma_Shared_Passive 131 -#define Pragma_Source_Reference 132 -#define Pragma_Static_Elaboration_Desired 133 -#define Pragma_Stream_Convert 134 -#define Pragma_Subtitle 135 -#define Pragma_Suppress_All 136 -#define Pragma_Suppress_Debug_Info 137 -#define Pragma_Suppress_Initialization 138 -#define Pragma_System_Name 139 -#define Pragma_Task_Info 140 -#define Pragma_Task_Name 141 -#define Pragma_Task_Storage 142 -#define Pragma_Time_Slice 143 -#define Pragma_Title 144 -#define Pragma_Unchecked_Union 145 -#define Pragma_Unimplemented_Unit 146 -#define Pragma_Universal_Aliasing 147 -#define Pragma_Unreferenced 148 -#define Pragma_Unreferenced_Objects 149 -#define Pragma_Unreserve_All_Interrupts 150 -#define Pragma_Volatile 151 -#define Pragma_Volatile_Components 152 -#define Pragma_Weak_External 153 -#define Pragma_AST_Entry 154 -#define Pragma_Interface 155 -#define Pragma_Priority 156 -#define Pragma_Storage_Size 157 -#define Pragma_Storage_Unit 158 +#define Pragma_Compiler_Unit 9 +#define Pragma_Component_Alignment 10 +#define Pragma_Convention_Identifier 11 +#define Pragma_Debug_Policy 12 +#define Pragma_Detect_Blocking 13 +#define Pragma_Discard_Names 14 +#define Pragma_Elaboration_Checks 15 +#define Pragma_Eliminate 16 +#define Pragma_Extend_System 17 +#define Pragma_Extensions_Allowed 18 +#define Pragma_External_Name_Casing 19 +#define Pragma_Float_Representation 20 +#define Pragma_Implicit_Packing 21 +#define Pragma_Initialize_Scalars 22 +#define Pragma_Interrupt_State 23 +#define Pragma_License 24 +#define Pragma_Locking_Policy 25 +#define Pragma_Long_Float 26 +#define Pragma_No_Run_Time 27 +#define Pragma_No_Strict_Aliasing 28 +#define Pragma_Normalize_Scalars 29 +#define Pragma_Polling 30 +#define Pragma_Persistent_BSS 31 +#define Pragma_Priority_Specific_Dispatching 32 +#define Pragma_Profile 33 +#define Pragma_Profile_Warnings 34 +#define Pragma_Propagate_Exceptions 35 +#define Pragma_Queuing_Policy 36 +#define Pragma_Ravenscar 37 +#define Pragma_Restricted_Run_Time 38 +#define Pragma_Restrictions 39 +#define Pragma_Restriction_Warnings 40 +#define Pragma_Reviewable 41 +#define Pragma_Source_File_Name 42 +#define Pragma_Source_File_Name_Project 43 +#define Pragma_Style_Checks 44 +#define Pragma_Suppress 45 +#define Pragma_Suppress_Exception_Locations 46 +#define Pragma_Task_Dispatching_Policy 47 +#define Pragma_Universal_Data 48 +#define Pragma_Unsuppress 49 +#define Pragma_Use_VADS_Size 50 +#define Pragma_Validity_Checks 51 +#define Pragma_Warnings 52 +#define Pragma_Wide_Character_Encoding 53 +#define Pragma_Abort_Defer 54 +#define Pragma_All_Calls_Remote 55 +#define Pragma_Annotate 56 +#define Pragma_Assert 57 +#define Pragma_Asynchronous 58 +#define Pragma_Atomic 59 +#define Pragma_Atomic_Components 60 +#define Pragma_Attach_Handler 61 +#define Pragma_CIL_Constructor 62 +#define Pragma_Comment 63 +#define Pragma_Common_Object 64 +#define Pragma_Complete_Representation 65 +#define Pragma_Complex_Representation 66 +#define Pragma_Controlled 67 +#define Pragma_Convention 68 +#define Pragma_CPP_Class 69 +#define Pragma_CPP_Constructor 70 +#define Pragma_CPP_Virtual 71 +#define Pragma_CPP_Vtable 72 +#define Pragma_Debug 73 +#define Pragma_Elaborate 74 +#define Pragma_Elaborate_All 75 +#define Pragma_Elaborate_Body 76 +#define Pragma_Export 77 +#define Pragma_Export_Exception 78 +#define Pragma_Export_Function 79 +#define Pragma_Export_Object 80 +#define Pragma_Export_Procedure 81 +#define Pragma_Export_Value 82 +#define Pragma_Export_Valued_Procedure 83 +#define Pragma_External 84 +#define Pragma_Finalize_Storage_Only 85 +#define Pragma_Ident 86 +#define Pragma_Import 87 +#define Pragma_Import_Exception 88 +#define Pragma_Import_Function 89 +#define Pragma_Import_Object 90 +#define Pragma_Import_Procedure 91 +#define Pragma_Import_Valued_Procedure 92 +#define Pragma_Inline 93 +#define Pragma_Inline_Always 94 +#define Pragma_Inline_Generic 95 +#define Pragma_Inspection_Point 96 +#define Pragma_Interface_Name 97 +#define Pragma_Interrupt_Handler 98 +#define Pragma_Interrupt_Priority 99 +#define Pragma_Java_Constructor 100 +#define Pragma_Java_Interface 101 +#define Pragma_Keep_Names 102 +#define Pragma_Link_With 103 +#define Pragma_Linker_Alias 104 +#define Pragma_Linker_Constructor 105 +#define Pragma_Linker_Destructor 106 +#define Pragma_Linker_Options 107 +#define Pragma_Linker_Section 108 +#define Pragma_List 109 +#define Pragma_Machine_Attribute 110 +#define Pragma_Main 111 +#define Pragma_Main_Storage 112 +#define Pragma_Memory_Size 113 +#define Pragma_No_Body 114 +#define Pragma_No_Return 115 +#define Pragma_Obsolescent 116 +#define Pragma_Optimize 117 +#define Pragma_Pack 118 +#define Pragma_Page 119 +#define Pragma_Passive 120 +#define Pragma_Preelaborable_Initialization 121 +#define Pragma_Preelaborate 122 +#define Pragma_Preelaborate_05 123 +#define Pragma_Psect_Object 124 +#define Pragma_Pure 125 +#define Pragma_Pure_05 126 +#define Pragma_Pure_Function 127 +#define Pragma_Remote_Call_Interface 128 +#define Pragma_Remote_Types 129 +#define Pragma_Share_Generic 130 +#define Pragma_Shared 131 +#define Pragma_Shared_Passive 132 +#define Pragma_Source_Reference 133 +#define Pragma_Static_Elaboration_Desired 134 +#define Pragma_Stream_Convert 135 +#define Pragma_Subtitle 136 +#define Pragma_Suppress_All 137 +#define Pragma_Suppress_Debug_Info 138 +#define Pragma_Suppress_Initialization 139 +#define Pragma_System_Name 140 +#define Pragma_Task_Info 141 +#define Pragma_Task_Name 142 +#define Pragma_Task_Storage 143 +#define Pragma_Time_Slice 144 +#define Pragma_Title 145 +#define Pragma_Unchecked_Union 146 +#define Pragma_Unimplemented_Unit 147 +#define Pragma_Universal_Aliasing 148 +#define Pragma_Unreferenced 149 +#define Pragma_Unreferenced_Objects 150 +#define Pragma_Unreserve_All_Interrupts 151 +#define Pragma_Volatile 152 +#define Pragma_Volatile_Components 153 +#define Pragma_Weak_External 154 +#define Pragma_AST_Entry 155 +#define Pragma_Interface 156 +#define Pragma_Priority 157 +#define Pragma_Storage_Size 158 +#define Pragma_Storage_Unit 159 /* End of snames.h (C version of Snames package spec) */ |