aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/namet.ads
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ada/namet.ads')
-rw-r--r--gcc/ada/namet.ads28
1 files changed, 19 insertions, 9 deletions
diff --git a/gcc/ada/namet.ads b/gcc/ada/namet.ads
index 4e025c7..b4b6878 100644
--- a/gcc/ada/namet.ads
+++ b/gcc/ada/namet.ads
@@ -115,7 +115,7 @@ package Namet is
-- character lower case letters in the range a-z, and these names are created
-- and initialized by the Initialize procedure.
--- Three values, one of type Int, one of type Byte, and one of type Boolean,
+-- Five values, one of type Int, one of type Byte, and three of type Boolean,
-- are stored with each names table entry and subprograms are provided for
-- setting and retrieving these associated values. The usage of these values
-- is up to the client:
@@ -128,9 +128,11 @@ package Namet is
-- The Byte field is used to hold the Token_Type value for reserved words
-- (see Sem for details).
--- The Boolean field is used to mark address clauses to optimize the
+-- The Boolean1 field is used to mark address clauses to optimize the
-- performance of the Exp_Util.Following_Address_Clause function.
+-- The Boolean2/Boolean3 fields are not used
+
-- In the binder, we have the following uses:
-- The Int field is used in various ways depending on the name involved,
@@ -367,8 +369,10 @@ package Namet is
pragma Inline (Get_Name_Table_Int);
-- Fetches the Int value associated with the given name
- function Get_Name_Table_Boolean (Id : Name_Id) return Boolean;
- -- Fetches the Boolean value associated with the given name
+ function Get_Name_Table_Boolean1 (Id : Name_Id) return Boolean;
+ function Get_Name_Table_Boolean2 (Id : Name_Id) return Boolean;
+ function Get_Name_Table_Boolean3 (Id : Name_Id) return Boolean;
+ -- Fetches the Boolean values associated with the given name
function Is_Operator_Name (Id : Name_Id) return Boolean;
-- Returns True if name given is of the form of an operator (that
@@ -504,7 +508,9 @@ package Namet is
pragma Inline (Set_Name_Table_Byte);
-- Sets the Byte value associated with the given name
- procedure Set_Name_Table_Boolean (Id : Name_Id; Val : Boolean);
+ procedure Set_Name_Table_Boolean1 (Id : Name_Id; Val : Boolean);
+ procedure Set_Name_Table_Boolean2 (Id : Name_Id; Val : Boolean);
+ procedure Set_Name_Table_Boolean3 (Id : Name_Id; Val : Boolean);
-- Sets the Boolean value associated with the given name
procedure Store_Encoded_Character (C : Char_Code);
@@ -644,8 +650,10 @@ private
Byte_Info : Byte;
-- Byte value associated with this name
- Boolean_Info : Boolean;
- -- Boolean value associated with the name
+ Boolean1_Info : Boolean;
+ Boolean2_Info : Boolean;
+ Boolean3_Info : Boolean;
+ -- Boolean values associated with the name
Name_Has_No_Encodings : Boolean;
-- This flag is set True if the name entry is known not to contain any
@@ -665,8 +673,10 @@ private
Name_Chars_Index at 0 range 0 .. 31;
Name_Len at 4 range 0 .. 15;
Byte_Info at 6 range 0 .. 7;
- Boolean_Info at 7 range 0 .. 0;
- Name_Has_No_Encodings at 7 range 1 .. 7;
+ Boolean1_Info at 7 range 0 .. 0;
+ Boolean2_Info at 7 range 1 .. 1;
+ Boolean3_Info at 7 range 2 .. 2;
+ Name_Has_No_Encodings at 7 range 3 .. 7;
Hash_Link at 8 range 0 .. 31;
Int_Info at 12 range 0 .. 31;
end record;