summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ada/a-charac.ads1
-rw-r--r--gcc/ada/a-chlat1.ads4
-rw-r--r--gcc/ada/a-elchha.ads6
-rw-r--r--gcc/ada/a-except.adb4
-rw-r--r--gcc/ada/a-except.ads4
-rw-r--r--gcc/ada/freeze.adb3
-rw-r--r--gcc/ada/g-hesora.adb6
-rw-r--r--gcc/ada/g-hesora.ads6
-rw-r--r--gcc/ada/g-htable.ads6
-rw-r--r--gcc/ada/g-speche.adb6
-rw-r--r--gcc/ada/g-speche.ads6
-rw-r--r--gcc/ada/lib-load.adb111
-rw-r--r--gcc/ada/lib-writ.adb74
-rw-r--r--gcc/ada/lib.adb13
-rw-r--r--gcc/ada/lib.ads35
-rw-r--r--gcc/ada/par-prag.adb1
-rw-r--r--gcc/ada/restrict.adb11
-rw-r--r--gcc/ada/restrict.ads5
-rw-r--r--gcc/ada/s-addope.adb4
-rw-r--r--gcc/ada/s-addope.ads6
-rw-r--r--gcc/ada/s-assert.adb4
-rw-r--r--gcc/ada/s-assert.ads6
-rw-r--r--gcc/ada/s-carun8.adb4
-rw-r--r--gcc/ada/s-carun8.ads6
-rw-r--r--gcc/ada/s-casuti.adb6
-rw-r--r--gcc/ada/s-casuti.ads6
-rw-r--r--gcc/ada/s-crc32.adb6
-rw-r--r--gcc/ada/s-crc32.ads6
-rwxr-xr-xgcc/ada/s-except.adb4
-rw-r--r--gcc/ada/s-except.ads4
-rw-r--r--gcc/ada/s-exctab.adb6
-rw-r--r--gcc/ada/s-exctab.ads6
-rw-r--r--gcc/ada/s-htable.adb6
-rw-r--r--gcc/ada/s-htable.ads4
-rw-r--r--gcc/ada/s-imgenu.adb4
-rw-r--r--gcc/ada/s-imgenu.ads6
-rw-r--r--gcc/ada/s-mastop.adb6
-rw-r--r--gcc/ada/s-mastop.ads4
-rw-r--r--gcc/ada/s-memory.adb6
-rw-r--r--gcc/ada/s-memory.ads4
-rwxr-xr-xgcc/ada/s-os_lib.adb4
-rwxr-xr-xgcc/ada/s-os_lib.ads4
-rw-r--r--gcc/ada/s-purexc.ads12
-rw-r--r--gcc/ada/s-secsta.adb4
-rw-r--r--gcc/ada/s-secsta.ads6
-rw-r--r--gcc/ada/s-soflin.adb6
-rw-r--r--gcc/ada/s-soflin.ads6
-rw-r--r--gcc/ada/s-sopco3.adb6
-rw-r--r--gcc/ada/s-sopco3.ads6
-rw-r--r--gcc/ada/s-sopco4.adb6
-rw-r--r--gcc/ada/s-sopco4.ads6
-rw-r--r--gcc/ada/s-sopco5.adb6
-rw-r--r--gcc/ada/s-sopco5.ads6
-rw-r--r--gcc/ada/s-stache.adb6
-rw-r--r--gcc/ada/s-stache.ads4
-rw-r--r--gcc/ada/s-stalib.adb6
-rw-r--r--gcc/ada/s-stalib.ads4
-rw-r--r--gcc/ada/s-stoele.adb4
-rw-r--r--gcc/ada/s-stoele.ads4
-rw-r--r--gcc/ada/s-strcom.adb10
-rw-r--r--gcc/ada/s-strcom.ads12
-rwxr-xr-xgcc/ada/s-string.adb4
-rwxr-xr-xgcc/ada/s-string.ads4
-rw-r--r--gcc/ada/s-strops.adb6
-rw-r--r--gcc/ada/s-strops.ads6
-rw-r--r--gcc/ada/s-traceb.adb6
-rw-r--r--gcc/ada/s-traceb.ads6
-rw-r--r--gcc/ada/s-traent.adb6
-rw-r--r--gcc/ada/s-traent.ads6
-rw-r--r--gcc/ada/s-unstyp.ads6
-rwxr-xr-xgcc/ada/s-utf_32.adb4
-rwxr-xr-xgcc/ada/s-utf_32.ads4
-rw-r--r--gcc/ada/s-wchcnv.adb8
-rw-r--r--gcc/ada/s-wchcnv.ads10
-rwxr-xr-xgcc/ada/s-wchcon.adb4
-rw-r--r--gcc/ada/s-wchcon.ads6
-rw-r--r--gcc/ada/s-wchjis.adb6
-rw-r--r--gcc/ada/s-wchjis.ads6
-rw-r--r--gcc/ada/sem_ch11.adb3
-rw-r--r--gcc/ada/sem_prag.adb10
-rw-r--r--gcc/ada/snames.adb1
-rw-r--r--gcc/ada/snames.ads1252
-rw-r--r--gcc/ada/snames.h301
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) */