https://gcc.gnu.org/g:57e56e9fcb359c78b7c797b925042f8578fa4931
commit r16-5238-g57e56e9fcb359c78b7c797b925042f8578fa4931 Author: Piotr Trojanek <[email protected]> Date: Tue Oct 28 16:45:49 2025 +0100 ada: Fix pretty-printing of end spans The pretty-printed output (emitted by the debugger "pp" command and by command line switch -gnatdt) was broken for an end span, e.g. 81 (Uint = 81) p.adb:8:11 Then_Statements = List (List_Id=-99999975) and now this is printed as: End_Span = 81 (Uint = 81) p.adb:8:11 Then_Statements = List (List_Id=-99999975) No impact on the compilation. gcc/ada/ChangeLog: * treepr.adb (Print_End_Span): Print prefix, field name and line break. Diff: --- gcc/ada/treepr.adb | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/gcc/ada/treepr.adb b/gcc/ada/treepr.adb index 9d789879f11d..88153accc661 100644 --- a/gcc/ada/treepr.adb +++ b/gcc/ada/treepr.adb @@ -140,7 +140,10 @@ package body Treepr is procedure Print_Init; -- Initialize for printing of tree with descendants - procedure Print_End_Span (N : Node_Id); + procedure Print_End_Span + (Prefix : String; + Field : Node_Field; + N : Node_Id); -- Print contents of End_Span field of node N. The format includes the -- implicit source location as well as the value of the field. @@ -605,10 +608,16 @@ package body Treepr is -- Print_End_Span -- -------------------- - procedure Print_End_Span (N : Node_Id) is + procedure Print_End_Span + (Prefix : String; + Field : Node_Field; + N : Node_Id) + is Val : constant Uint := End_Span (N); begin + Write_Str (Prefix); + Write_Str (Image (Field) & " = "); UI_Write (Val); Write_Str (" (Uint = "); Write_Str (UI_Image (Val)); @@ -617,6 +626,8 @@ package body Treepr is if Present (Val) then Write_Location (End_Location (N)); end if; + + Write_Eol; end Print_End_Span; ------------------------ @@ -1439,7 +1450,7 @@ package body Treepr is -- End_Location. if Fields (Field_Index) = F_End_Span then - Print_End_Span (N); + Print_End_Span (Prefix, F_End_Span, N); else Print_Node_Field
