From afb52e6e41383d778c10ea086366980004ed5d6c Mon Sep 17 00:00:00 2001 From: Piotr Trojanek <trojanek@adacore.com> Date: Fri, 13 Oct 2023 10:40:12 +0200 Subject: [PATCH] ada: Cleanup more "not Present" We had a GNATcheck rule that suggests replacing "not Present (...)" with "No (...)", but it only detected calls with a parameter of type Node_Id. Now this rules also detects parameters of type Elist_Id. gcc/ada/ * sem_ch3.adb, sem_ch4.adb, sem_eval.adb: Fix newly detected violations. --- gcc/ada/sem_ch3.adb | 12 +++++------- gcc/ada/sem_ch4.adb | 2 +- gcc/ada/sem_eval.adb | 2 +- 3 files changed, 7 insertions(+), 9 deletions(-) diff --git a/gcc/ada/sem_ch3.adb b/gcc/ada/sem_ch3.adb index e92b46fa6f6f..c1113e4fc421 100644 --- a/gcc/ada/sem_ch3.adb +++ b/gcc/ada/sem_ch3.adb @@ -3385,7 +3385,7 @@ package body Sem_Ch3 is -- case we bypass this. if Ekind (T) /= E_Void then - if not Present (Direct_Primitive_Operations (T)) then + if No (Direct_Primitive_Operations (T)) then if Etype (T) = T then Set_Direct_Primitive_Operations (T, New_Elmt_List); @@ -3397,8 +3397,7 @@ package body Sem_Ch3 is elsif Etype (T) = Base_Type (T) then - if not Present (Direct_Primitive_Operations (Base_Type (T))) - then + if No (Direct_Primitive_Operations (Base_Type (T))) then Set_Direct_Primitive_Operations (Base_Type (T), New_Elmt_List); end if; @@ -3416,7 +3415,7 @@ package body Sem_Ch3 is -- If T already has a Direct_Primitive_Operations list but its -- base type doesn't then set the base type's list to T's list. - elsif not Present (Direct_Primitive_Operations (Base_Type (T))) then + elsif No (Direct_Primitive_Operations (Base_Type (T))) then Set_Direct_Primitive_Operations (Base_Type (T), Direct_Primitive_Operations (T)); end if; @@ -10345,7 +10344,7 @@ package body Sem_Ch3 is -- If not already set, initialize the derived type's list of primitive -- operations to an empty element list. - if not Present (Direct_Primitive_Operations (Derived_Type)) then + if No (Direct_Primitive_Operations (Derived_Type)) then Set_Direct_Primitive_Operations (Derived_Type, New_Elmt_List); -- If Etype of the derived type is the base type (as opposed to @@ -10355,8 +10354,7 @@ package body Sem_Ch3 is -- between the two. if Etype (Derived_Type) = Base_Type (Derived_Type) - and then - not Present (Direct_Primitive_Operations (Etype (Derived_Type))) + and then No (Direct_Primitive_Operations (Etype (Derived_Type))) then Set_Direct_Primitive_Operations (Etype (Derived_Type), diff --git a/gcc/ada/sem_ch4.adb b/gcc/ada/sem_ch4.adb index 2f3dfe71590d..e3badc3e19d1 100644 --- a/gcc/ada/sem_ch4.adb +++ b/gcc/ada/sem_ch4.adb @@ -9911,7 +9911,7 @@ package body Sem_Ch4 is if (not Is_Tagged_Type (Obj_Type) and then (not (Core_Extensions_Allowed or Allow_Extensions) - or else not Present (Primitive_Operations (Obj_Type)))) + or else No (Primitive_Operations (Obj_Type)))) or else Is_Incomplete_Type (Obj_Type) then Obj_Type := Prev_Obj_Type; diff --git a/gcc/ada/sem_eval.adb b/gcc/ada/sem_eval.adb index f744ab38be64..f88a00aa3803 100644 --- a/gcc/ada/sem_eval.adb +++ b/gcc/ada/sem_eval.adb @@ -6812,7 +6812,7 @@ package body Sem_Eval is -- No constraint on the parent type - or else not Present (Discriminant_Constraint (Etype (Typ))) + or else No (Discriminant_Constraint (Etype (Typ))) or else Is_Empty_Elmt_List (Discriminant_Constraint (Etype (Typ))) -- GitLab