diff options
Diffstat (limited to 'gcc/ada/einfo.adb')
-rw-r--r-- | gcc/ada/einfo.adb | 36 |
1 files changed, 27 insertions, 9 deletions
diff --git a/gcc/ada/einfo.adb b/gcc/ada/einfo.adb index 49dffae047b..01d384ec4f6 100644 --- a/gcc/ada/einfo.adb +++ b/gcc/ada/einfo.adb @@ -504,9 +504,8 @@ package body Einfo is -- Optimize_Alignment_Time Flag242 -- Overlays_Constant Flag243 -- Is_RACW_Stub_Type Flag244 + -- Is_Private_Primitive Flag245 - -- (unused) Flag169 - -- (unused) Flag245 -- (unused) Flag246 -- (unused) Flag247 @@ -1929,7 +1928,8 @@ package body Einfo is function Is_Primitive_Wrapper (Id : E) return B is begin - pragma Assert (Ekind (Id) = E_Procedure); + pragma Assert (Ekind (Id) = E_Function + or else Ekind (Id) = E_Procedure); return Flag195 (Id); end Is_Primitive_Wrapper; @@ -1944,6 +1944,13 @@ package body Einfo is return Flag53 (Id); end Is_Private_Descendant; + function Is_Private_Primitive (Id : E) return B is + begin + pragma Assert (Ekind (Id) = E_Function + or else Ekind (Id) = E_Procedure); + return Flag245 (Id); + end Is_Private_Primitive; + function Is_Protected_Interface (Id : E) return B is begin pragma Assert (Is_Interface (Id)); @@ -2702,8 +2709,9 @@ package body Einfo is function Wrapped_Entity (Id : E) return E is begin - pragma Assert (Ekind (Id) = E_Procedure - and then Is_Primitive_Wrapper (Id)); + pragma Assert ((Ekind (Id) = E_Function + or else Ekind (Id) = E_Procedure) + and then Is_Primitive_Wrapper (Id)); return Node27 (Id); end Wrapped_Entity; @@ -4372,7 +4380,8 @@ package body Einfo is procedure Set_Is_Primitive_Wrapper (Id : E; V : B := True) is begin - pragma Assert (Ekind (Id) = E_Procedure); + pragma Assert (Ekind (Id) = E_Function + or else Ekind (Id) = E_Procedure); Set_Flag195 (Id, V); end Set_Is_Primitive_Wrapper; @@ -4387,6 +4396,13 @@ package body Einfo is Set_Flag53 (Id, V); end Set_Is_Private_Descendant; + procedure Set_Is_Private_Primitive (Id : E; V : B := True) is + begin + pragma Assert (Ekind (Id) = E_Function + or else Ekind (Id) = E_Procedure); + Set_Flag245 (Id, V); + end Set_Is_Private_Primitive; + procedure Set_Is_Protected_Interface (Id : E; V : B := True) is begin pragma Assert (Is_Interface (Id)); @@ -5168,8 +5184,9 @@ package body Einfo is procedure Set_Wrapped_Entity (Id : E; V : E) is begin - pragma Assert (Ekind (Id) = E_Procedure - and then Is_Primitive_Wrapper (Id)); + pragma Assert ((Ekind (Id) = E_Function + or else Ekind (Id) = E_Procedure) + and then Is_Primitive_Wrapper (Id)); Set_Node27 (Id, V); end Set_Wrapped_Entity; @@ -7597,9 +7614,11 @@ package body Einfo is W ("Is_Packed_Array_Type", Flag138 (Id)); W ("Is_Potentially_Use_Visible", Flag9 (Id)); W ("Is_Preelaborated", Flag59 (Id)); + W ("Is_Primitive", Flag218 (Id)); W ("Is_Primitive_Wrapper", Flag195 (Id)); W ("Is_Private_Composite", Flag107 (Id)); W ("Is_Private_Descendant", Flag53 (Id)); + W ("Is_Private_Primitive", Flag245 (Id)); W ("Is_Protected_Interface", Flag198 (Id)); W ("Is_Public", Flag10 (Id)); W ("Is_Pure", Flag44 (Id)); @@ -7666,7 +7685,6 @@ package body Einfo is W ("Suppress_Init_Proc", Flag105 (Id)); W ("Suppress_Style_Checks", Flag165 (Id)); W ("Suppress_Value_Tracking_On_Call", Flag217 (Id)); - W ("Is_Primitive", Flag218 (Id)); W ("Treat_As_Volatile", Flag41 (Id)); W ("Universal_Aliasing", Flag216 (Id)); W ("Used_As_Generic_Actual", Flag222 (Id)); |