diff options
author | Piotr Trojanek <trojanek@adacore.com> | 2020-11-29 22:20:09 +0100 |
---|---|---|
committer | Pierre-Marie de Rodat <derodat@adacore.com> | 2020-12-16 08:01:02 -0500 |
commit | 612c48b13b38c42094059350d945f9d29983491a (patch) | |
tree | d054c364abd608b90f7fe593d16999aaa290a75b | |
parent | 1053ff8a3a8bde5498476e544b40fc9cdc5ee888 (diff) | |
download | gcc-612c48b13b38c42094059350d945f9d29983491a.zip gcc-612c48b13b38c42094059350d945f9d29983491a.tar.gz gcc-612c48b13b38c42094059350d945f9d29983491a.tar.bz2 |
[Ada] Simplify membership tests with N_Subprogram_Call subtype
gcc/ada/
* exp_ch6.adb, exp_util.adb, sem_ch4.adb, sem_disp.adb,
sem_elab.adb: Simplify membership test.
-rw-r--r-- | gcc/ada/exp_ch6.adb | 3 | ||||
-rw-r--r-- | gcc/ada/exp_util.adb | 3 | ||||
-rw-r--r-- | gcc/ada/sem_ch4.adb | 3 | ||||
-rw-r--r-- | gcc/ada/sem_disp.adb | 2 | ||||
-rw-r--r-- | gcc/ada/sem_elab.adb | 4 |
5 files changed, 6 insertions, 9 deletions
diff --git a/gcc/ada/exp_ch6.adb b/gcc/ada/exp_ch6.adb index afe7e8b..4e0559c 100644 --- a/gcc/ada/exp_ch6.adb +++ b/gcc/ada/exp_ch6.adb @@ -3491,8 +3491,7 @@ package body Exp_Ch6 is -- of the dimension I/O packages. if Ada_Version >= Ada_2012 - and then - Nkind (Call_Node) in N_Procedure_Call_Statement | N_Function_Call + and then Nkind (Call_Node) in N_Subprogram_Call and then Present (Parameter_Associations (Call_Node)) then Expand_Put_Call_With_Symbol (Call_Node); diff --git a/gcc/ada/exp_util.adb b/gcc/ada/exp_util.adb index bcfedfb..0e458a3 100644 --- a/gcc/ada/exp_util.adb +++ b/gcc/ada/exp_util.adb @@ -12247,8 +12247,7 @@ package body Exp_Util is -- and view swaps, the parent type is taken from the formal -- parameter of the subprogram being called. - if Nkind (Context) in - N_Function_Call | N_Procedure_Call_Statement + if Nkind (Context) in N_Subprogram_Call and then No (Type_Map.Get (Entity (Name (Context)))) then New_Ref := diff --git a/gcc/ada/sem_ch4.adb b/gcc/ada/sem_ch4.adb index 7b358d4..9f7652b 100644 --- a/gcc/ada/sem_ch4.adb +++ b/gcc/ada/sem_ch4.adb @@ -8088,8 +8088,7 @@ package body Sem_Ch4 is -- resolution does not depend on the type of the parameter that -- includes the indexing operation. - elsif Nkind (Parent (Par)) in - N_Function_Call | N_Procedure_Call_Statement + elsif Nkind (Parent (Par)) in N_Subprogram_Call and then Is_Entity_Name (Name (Parent (Par))) then declare diff --git a/gcc/ada/sem_disp.adb b/gcc/ada/sem_disp.adb index cf54337..36efa42 100644 --- a/gcc/ada/sem_disp.adb +++ b/gcc/ada/sem_disp.adb @@ -625,7 +625,7 @@ package body Sem_Disp is Par := Parent (Par); end if; - if Nkind (Par) in N_Function_Call | N_Procedure_Call_Statement + if Nkind (Par) in N_Subprogram_Call and then Is_Entity_Name (Name (Par)) then declare diff --git a/gcc/ada/sem_elab.adb b/gcc/ada/sem_elab.adb index 399aeb4..89b6e13 100644 --- a/gcc/ada/sem_elab.adb +++ b/gcc/ada/sem_elab.adb @@ -3744,7 +3744,7 @@ package body Sem_Elab is Set_Is_Dispatching_Call (Marker, - Nkind (N) in N_Function_Call | N_Procedure_Call_Statement + Nkind (N) in N_Subprogram_Call and then Present (Controlling_Argument (N))); Set_Is_Elaboration_Checks_OK_Node @@ -19368,7 +19368,7 @@ package body Sem_Elab is function Is_Call_Of_Generic_Formal (N : Node_Id) return Boolean is begin - return Nkind (N) in N_Function_Call | N_Procedure_Call_Statement + return Nkind (N) in N_Subprogram_Call -- Always return False if debug flag -gnatd.G is set |