In package Stringt we already have a Null_String_Id, which represents a
null string with length zero. There is no need to duplicate it in other
packages.
Cleanup originating from enabling expansion of dispatching wrappers for
GNATprove; semantics is unaffected.
Tested on x86_64-pc-linux-gnu, committed on trunk
gcc/ada/
* par-ch4.adb (P_Simple_Expression): Reuse Null_String_Id.
* prep.adb (Parse_Def_File): Likewise; remove Empty_String.
diff --git a/gcc/ada/par-ch4.adb b/gcc/ada/par-ch4.adb
--- a/gcc/ada/par-ch4.adb
+++ b/gcc/ada/par-ch4.adb
@@ -2471,9 +2471,6 @@ package body Ch4 is
and then Num_Concats >= Num_Concats_Threshold
then
declare
- Empty_String_Val : String_Id;
- -- String_Id for ""
-
Strlit_Concat_Val : String_Id;
-- Contains the folded value (which will be correct if the
-- "&" operators are the predefined ones).
@@ -2509,11 +2506,9 @@ package body Ch4 is
-- Create new folded node, and rewrite result with a concat-
-- enation of an empty string literal and the folded node.
- Start_String;
- Empty_String_Val := End_String;
New_Node :=
Make_Op_Concat (Loc,
- Make_String_Literal (Loc, Empty_String_Val),
+ Make_String_Literal (Loc, Null_String_Id),
Make_String_Literal (Loc, Strlit_Concat_Val,
Is_Folded_In_Parser => True));
Rewrite (Node1, New_Node);
diff --git a/gcc/ada/prep.adb b/gcc/ada/prep.adb
--- a/gcc/ada/prep.adb
+++ b/gcc/ada/prep.adb
@@ -114,9 +114,6 @@ package body Prep is
-- Used to avoid repetition of the part of the initialisation that needs
-- to be done only once.
- Empty_String : String_Id;
- -- "", as a string_id
-
String_False : String_Id;
-- "false", as a string_id
@@ -809,9 +806,6 @@ package body Prep is
Store_String_Chars ("True");
True_Value.Value := End_String;
- Start_String;
- Empty_String := End_String;
-
Start_String;
Store_String_Chars ("False");
String_False := End_String;
@@ -1072,7 +1066,7 @@ package body Prep is
Original => Original_Name,
On_The_Command_Line => False,
Is_A_String => False,
- Value => Empty_String);
+ Value => Null_String_Id);
else
Value_Start := Token_Ptr;