diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2021-11-01 10:30:51 +0100 |
---|---|---|
committer | Pierre-Marie de Rodat <derodat@adacore.com> | 2021-11-09 09:44:50 +0000 |
commit | 5861b128b9942ef92b3755610b0459273e7cf234 (patch) | |
tree | d96fb14a217e064c4dfe4b3a00bc71b82d347214 /gcc/ada | |
parent | 09afdaeeeba7e4c1fd00f4c43b5e5b36dbe6cf92 (diff) | |
download | gcc-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.adb | 54 |
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"); |