aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2021-11-01 10:30:51 +0100
committerPierre-Marie de Rodat <derodat@adacore.com>2021-11-09 09:44:50 +0000
commit5861b128b9942ef92b3755610b0459273e7cf234 (patch)
treed96fb14a217e064c4dfe4b3a00bc71b82d347214 /gcc/ada
parent09afdaeeeba7e4c1fd00f4c43b5e5b36dbe6cf92 (diff)
downloadgcc-5861b128b9942ef92b3755610b0459273e7cf234.zip
gcc-5861b128b9942ef92b3755610b0459273e7cf234.tar.gz
gcc-5861b128b9942ef92b3755610b0459273e7cf234.tar.bz2
[Ada] Print Storage_Pool and Procedure_To_Call fields
gcc/ada/ * sprint.adb (Sprint_Node_Actual) <N_Allocator>: Also print the Procedure_To_Call field if it is present. <N_Extended_Return_Statement>: Also print the Storage_Pool and Procedure_To_Call fields if they are present. <N_Free_Statement>: Likewise. <N_Simple_Return_Statement>: Likewise.
Diffstat (limited to 'gcc/ada')
-rw-r--r--gcc/ada/sprint.adb54
1 files changed, 49 insertions, 5 deletions
diff --git a/gcc/ada/sprint.adb b/gcc/ada/sprint.adb
index 69996cb..611563a 100644
--- a/gcc/ada/sprint.adb
+++ b/gcc/ada/sprint.adb
@@ -1116,6 +1116,12 @@ package body Sprint is
Write_Char (']');
end if;
+ if Present (Procedure_To_Call (Node)) then
+ Write_Str_With_Col_Check ("[procedure_to_call = ");
+ Sprint_Node (Procedure_To_Call (Node));
+ Write_Char (']');
+ end if;
+
when N_And_Then =>
Sprint_Left_Opnd (Node);
Write_Str_Sloc (" and then ");
@@ -1785,11 +1791,23 @@ package body Sprint is
if Present (Handled_Statement_Sequence (Node)) then
Write_Str_With_Col_Check (" do");
Sprint_Node (Handled_Statement_Sequence (Node));
- Write_Indent_Str ("end return;");
- else
- Write_Indent_Str (";");
+ Write_Indent_Str ("end return");
+ end if;
+
+ if Present (Storage_Pool (Node)) then
+ Write_Str_With_Col_Check ("[storage_pool = ");
+ Sprint_Node (Storage_Pool (Node));
+ Write_Char (']');
end if;
+ if Present (Procedure_To_Call (Node)) then
+ Write_Str_With_Col_Check ("[procedure_to_call = ");
+ Sprint_Node (Procedure_To_Call (Node));
+ Write_Char (']');
+ end if;
+
+ Write_Char (';');
+
when N_Delta_Aggregate =>
Write_Str_With_Col_Check_Sloc ("(");
Sprint_Node (Expression (Node));
@@ -1973,6 +1991,19 @@ package body Sprint is
when N_Free_Statement =>
Write_Indent_Str_Sloc ("free ");
Sprint_Node (Expression (Node));
+
+ if Present (Storage_Pool (Node)) then
+ Write_Str_With_Col_Check ("[storage_pool = ");
+ Sprint_Node (Storage_Pool (Node));
+ Write_Char (']');
+ end if;
+
+ if Present (Procedure_To_Call (Node)) then
+ Write_Str_With_Col_Check ("[procedure_to_call = ");
+ Sprint_Node (Procedure_To_Call (Node));
+ Write_Char (']');
+ end if;
+
Write_Char (';');
when N_Freeze_Entity =>
@@ -3170,11 +3201,24 @@ package body Sprint is
if Present (Expression (Node)) then
Write_Indent_Str_Sloc ("return ");
Sprint_Node (Expression (Node));
- Write_Char (';');
else
- Write_Indent_Str_Sloc ("return;");
+ Write_Indent_Str_Sloc ("return");
+ end if;
+
+ if Present (Storage_Pool (Node)) then
+ Write_Str_With_Col_Check ("[storage_pool = ");
+ Sprint_Node (Storage_Pool (Node));
+ Write_Char (']');
end if;
+ if Present (Procedure_To_Call (Node)) then
+ Write_Str_With_Col_Check ("[procedure_to_call = ");
+ Sprint_Node (Procedure_To_Call (Node));
+ Write_Char (']');
+ end if;
+
+ Write_Char (';');
+
when N_Selective_Accept =>
Write_Indent_Str_Sloc ("select");