diff options
Diffstat (limited to 'gcc/ada/rtsfind.adb')
-rw-r--r-- | gcc/ada/rtsfind.adb | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/gcc/ada/rtsfind.adb b/gcc/ada/rtsfind.adb index 86713ff..f47aacc 100644 --- a/gcc/ada/rtsfind.adb +++ b/gcc/ada/rtsfind.adb @@ -1030,8 +1030,7 @@ package body Rtsfind is U : RT_Unit_Table_Record renames RT_Unit_Table (U_Id); Priv_Par : constant Elist_Id := New_Elmt_List; Lib_Unit : Node_Id; - Saved_GM : constant Ghost_Mode_Type := Ghost_Mode; - Saved_IGR : constant Node_Id := Ignored_Ghost_Region; + Saved_Ghost_Config : constant Ghost_Config_Type := Ghost_Config; Saved_ISMP : constant Boolean := Ignore_SPARK_Mode_Pragmas_In_Instance; Saved_SM : constant SPARK_Mode_Type := SPARK_Mode; @@ -1099,7 +1098,7 @@ package body Rtsfind is procedure Restore_SPARK_Context is begin Ignore_SPARK_Mode_Pragmas_In_Instance := Saved_ISMP; - Restore_Ghost_Region (Saved_GM, Saved_IGR); + Restore_Ghost_Region (Saved_Ghost_Config); Restore_SPARK_Mode (Saved_SM, Saved_SMP); end Restore_SPARK_Context; @@ -1289,7 +1288,7 @@ package body Rtsfind is declare LibUnit : constant Node_Id := Unit (Cunit (U.Unum)); - Saved_GM : constant Ghost_Mode_Type := Ghost_Mode; + Saved_GM : constant Ghost_Mode_Type := Ghost_Config.Ghost_Mode; Clause : Node_Id; Withn : Node_Id; @@ -1308,13 +1307,13 @@ package body Rtsfind is -- later, after ignored ghost code is converted to a null -- statement. - Ghost_Mode := None; + Ghost_Config.Ghost_Mode := None; Withn := Make_With_Clause (Standard_Location, Name => Make_Unit_Name (U, Defining_Unit_Name (Specification (LibUnit)))); - Ghost_Mode := Saved_GM; + Ghost_Config.Ghost_Mode := Saved_GM; Set_Corresponding_Spec (Withn, U.Entity); Set_First_Name (Withn); @@ -1627,7 +1626,9 @@ package body Rtsfind is -- is pulled within an ignored Ghost context because all this code will -- disappear. - if U_Id = System_Secondary_Stack and then Ghost_Mode /= Ignore then + if U_Id = System_Secondary_Stack + and then Ghost_Config.Ghost_Mode /= Ignore + then Sec_Stack_Used := True; end if; |