[Ada] Restore double quotes in debug printouts
A previous change in "Make debug printouts more robust" accidentally removed double quotes around identifiers in debug printouts. This patch restores those. So for example, we have: Prev_Entity = Node #10 N_Defining_Identifier "foo" (Entity_Id=795) and not: Prev_Entity = Node #10 N_Defining_Identifier foo (Entity_Id=795) This affects the output of -gnatdt, and certain calls normally done from gdb. gcc/ada/ * namet.ads, namet.adb (Write_Name_For_Debug): Add Quote parameter to allow conditional addition of quotes. Note that some calls to Write_Name_For_Debug, for example for file names, shouldn't have quotes, as in some_package.adb:123:45. * treepr.adb (Print_Name): Add double quotes around the name using the above Quote parameters.
This commit is contained in:
parent
e28064111c
commit
0b4606618c
3 changed files with 8 additions and 4 deletions
|
@ -1570,9 +1570,11 @@ package body Namet is
|
|||
-- Write_Name_For_Debug --
|
||||
--------------------------
|
||||
|
||||
procedure Write_Name_For_Debug (Id : Name_Id) is
|
||||
procedure Write_Name_For_Debug (Id : Name_Id; Quote : String := "") is
|
||||
begin
|
||||
if Is_Valid_Name (Id) then
|
||||
Write_Str (Quote);
|
||||
|
||||
declare
|
||||
Buf : Bounded_String (Max_Length => Natural (Length_Of_Name (Id)));
|
||||
begin
|
||||
|
@ -1580,6 +1582,8 @@ package body Namet is
|
|||
Write_Str (Buf.Chars (1 .. Buf.Length));
|
||||
end;
|
||||
|
||||
Write_Str (Quote);
|
||||
|
||||
elsif Id = No_Name then
|
||||
Write_Str ("<No_Name>");
|
||||
|
||||
|
|
|
@ -433,9 +433,9 @@ package Namet is
|
|||
-- Like Write_Name, except that the name written is the decoded name, as
|
||||
-- described for Append_Decoded.
|
||||
|
||||
procedure Write_Name_For_Debug (Id : Name_Id);
|
||||
procedure Write_Name_For_Debug (Id : Name_Id; Quote : String := "");
|
||||
-- Like Write_Name, except it tries to be robust in the presence of invalid
|
||||
-- data.
|
||||
-- data, and valid names are surrounded by Quote.
|
||||
|
||||
function Name_Entries_Count return Nat;
|
||||
-- Return current number of entries in the names table
|
||||
|
|
|
@ -1142,7 +1142,7 @@ package body Treepr is
|
|||
procedure Print_Name (N : Name_Id) is
|
||||
begin
|
||||
if Phase = Printing then
|
||||
Write_Name_For_Debug (N);
|
||||
Write_Name_For_Debug (N, Quote => """");
|
||||
end if;
|
||||
end Print_Name;
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue