aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/rtsfind.ads
diff options
context:
space:
mode:
authorHristian Kirtchev <kirtchev@adacore.com>2011-08-30 13:28:16 +0000
committerArnaud Charlet <charlet@gcc.gnu.org>2011-08-30 15:28:16 +0200
commit3647ca26874c7f8814049a5efca277354ef0e3e7 (patch)
tree485a52093002a07b2af758d81496537165510170 /gcc/ada/rtsfind.ads
parent6d4e4fbcd2f5c5a73d263c4f45b0438d7dec9492 (diff)
downloadgcc-3647ca26874c7f8814049a5efca277354ef0e3e7.zip
gcc-3647ca26874c7f8814049a5efca277354ef0e3e7.tar.gz
gcc-3647ca26874c7f8814049a5efca277354ef0e3e7.tar.bz2
exp_ch3.adb (Expand_Freeze_Array_Type): Correct the call to Build_Finalization_Master by supplying an insertion node...
2011-08-30 Hristian Kirtchev <kirtchev@adacore.com> * exp_ch3.adb (Expand_Freeze_Array_Type): Correct the call to Build_Finalization_Master by supplying an insertion node and enclosing scope. In its old version, the call did not generate a finalization master. (Expand_Freeze_Record_Type): Add local variable Has_AACC. Add code to recognize anonymous access-to-controlled components. Rewrite the machinery which creates finalization masters to service anonymous access-to-controlled components of a record type. In its current state, only one heterogeneous master is necessary to handle multiple anonymous components. (Freeze_Type): Comment reformatting. * rtsfind.ads: Add RE_Set_Is_Heterogeneous to tables RE_Id and RE_Unit_Table. * s-stposu.adb (Allocate_Any_Controlled): Rewrite the machinery which associates TSS primitive Finalize_Address with either the master itself or with the internal hash table depending on the mode of operation of the master. From-SVN: r178301
Diffstat (limited to 'gcc/ada/rtsfind.ads')
-rw-r--r--gcc/ada/rtsfind.ads2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/ada/rtsfind.ads b/gcc/ada/rtsfind.ads
index d262e86..be2bda7 100644
--- a/gcc/ada/rtsfind.ads
+++ b/gcc/ada/rtsfind.ads
@@ -803,6 +803,7 @@ package Rtsfind is
RE_Finalization_Master_Ptr, -- System.Finalization_Masters
RE_Set_Base_Pool, -- System.Finalization_Masters
RE_Set_Finalize_Address, -- System.Finalization_Masters
+ RE_Set_Is_Heterogeneous, -- System.Finalization_Masters
RE_Root_Controlled, -- System.Finalization_Root
RE_Root_Controlled_Ptr, -- System.Finalization_Root
@@ -1991,6 +1992,7 @@ package Rtsfind is
RE_Finalization_Master_Ptr => System_Finalization_Masters,
RE_Set_Base_Pool => System_Finalization_Masters,
RE_Set_Finalize_Address => System_Finalization_Masters,
+ RE_Set_Is_Heterogeneous => System_Finalization_Masters,
RE_Root_Controlled => System_Finalization_Root,
RE_Root_Controlled_Ptr => System_Finalization_Root,