diff options
author | Arnaud Charlet <charlet@adacore.com> | 2020-03-01 06:59:11 -0500 |
---|---|---|
committer | Pierre-Marie de Rodat <derodat@adacore.com> | 2020-06-09 04:09:04 -0400 |
commit | 4228c32ab0b50e10e74ff53159894708471bcdbc (patch) | |
tree | a6103aead9b87ef970c07c50ed26250cd48a6905 | |
parent | 7d4d54aa7c2d6dadcc24fb946b127bd1a179e3ec (diff) | |
download | gcc-4228c32ab0b50e10e74ff53159894708471bcdbc.zip gcc-4228c32ab0b50e10e74ff53159894708471bcdbc.tar.gz gcc-4228c32ab0b50e10e74ff53159894708471bcdbc.tar.bz2 |
[Ada] Code refactoring on calls to Set_Debug_Info_Needed
2020-06-09 Arnaud Charlet <charlet@adacore.com>
gcc/ada/
* sem_util.ads, sem_util.adb (Set_Debug_Info_Defining_Id): New.
* exp_ch3.adb, exp_ch8.adb: Call Set_Debug_Info_Defining_Id when
relevant.
-rw-r--r-- | gcc/ada/exp_ch3.adb | 4 | ||||
-rw-r--r-- | gcc/ada/exp_ch8.adb | 5 | ||||
-rw-r--r-- | gcc/ada/sem_util.adb | 11 | ||||
-rw-r--r-- | gcc/ada/sem_util.ads | 4 |
4 files changed, 17 insertions, 7 deletions
diff --git a/gcc/ada/exp_ch3.adb b/gcc/ada/exp_ch3.adb index a977e4f..6aaa475 100644 --- a/gcc/ada/exp_ch3.adb +++ b/gcc/ada/exp_ch3.adb @@ -7267,9 +7267,7 @@ package body Exp_Ch3 is -- debug information, even though it is defined by a generated -- renaming that does not come from source. - if Comes_From_Source (Defining_Identifier (N)) then - Set_Debug_Info_Needed (Defining_Identifier (N)); - end if; + Set_Debug_Info_Defining_Id (N); -- Now call the routine to generate debug info for the renaming diff --git a/gcc/ada/exp_ch8.adb b/gcc/ada/exp_ch8.adb index 71160ee..4498be5 100644 --- a/gcc/ada/exp_ch8.adb +++ b/gcc/ada/exp_ch8.adb @@ -209,10 +209,7 @@ package body Exp_Ch8 is -- needing debug info if it comes from sources because the current -- setting in Freeze_Entity occurs too late. ??? - if Comes_From_Source (Defining_Identifier (N)) then - Set_Debug_Info_Needed (Defining_Identifier (N)); - end if; - + Set_Debug_Info_Defining_Id (N); Decl := Debug_Renaming_Declaration (N); if Present (Decl) then diff --git a/gcc/ada/sem_util.adb b/gcc/ada/sem_util.adb index ff52378..cd7ac1e 100644 --- a/gcc/ada/sem_util.adb +++ b/gcc/ada/sem_util.adb @@ -25142,6 +25142,17 @@ package body Sem_Util is end if; end Set_Debug_Info_Needed; + -------------------------------- + -- Set_Debug_Info_Defining_Id -- + -------------------------------- + + procedure Set_Debug_Info_Defining_Id (N : Node_Id) is + begin + if Comes_From_Source (Defining_Identifier (N)) then + Set_Debug_Info_Needed (Defining_Identifier (N)); + end if; + end Set_Debug_Info_Defining_Id; + ---------------------------- -- Set_Entity_With_Checks -- ---------------------------- diff --git a/gcc/ada/sem_util.ads b/gcc/ada/sem_util.ads index 03fcfe4..5ca8ca3 100644 --- a/gcc/ada/sem_util.ads +++ b/gcc/ada/sem_util.ads @@ -2721,6 +2721,10 @@ package Sem_Util is -- This routine should always be used instead of Set_Needs_Debug_Info to -- ensure that subsidiary entities are properly handled. + procedure Set_Debug_Info_Defining_Id (N : Node_Id); + -- Call Set_Debug_Info_Needed on Defining_Identifier (N) if it comes + -- from source. + procedure Set_Entity_With_Checks (N : Node_Id; Val : Entity_Id); -- This procedure has the same calling sequence as Set_Entity, but it -- performs additional checks as follows: |