diff options
author | Hristian Kirtchev <kirtchev@adacore.com> | 2011-12-12 13:40:18 +0000 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2011-12-12 14:40:18 +0100 |
commit | ad5a445d3ecbc55dd7775e1e3df2f7cbcd967a0d (patch) | |
tree | 27a746db1b0be7d13ece4ca5f78e3ecf9ae86734 /gcc | |
parent | 83d5afb7791bc4a892944846286372a5422fe877 (diff) | |
download | gcc-ad5a445d3ecbc55dd7775e1e3df2f7cbcd967a0d.zip gcc-ad5a445d3ecbc55dd7775e1e3df2f7cbcd967a0d.tar.gz gcc-ad5a445d3ecbc55dd7775e1e3df2f7cbcd967a0d.tar.bz2 |
exp_ch4.adb (Expand_N_Allocator): Update the master of an anonymous access-to-controlled type to utilize the...
2011-12-12 Hristian Kirtchev <kirtchev@adacore.com>
* exp_ch4.adb (Expand_N_Allocator): Update the master of an
anonymous access-to-controlled type to utilize the heterogeneous
master associated with the current unit.
From-SVN: r182239
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/ada/exp_ch4.adb | 7 |
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 8ccc29b..a3679dd 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,9 @@ +2011-12-12 Hristian Kirtchev <kirtchev@adacore.com> + + * exp_ch4.adb (Expand_N_Allocator): Update the master of an + anonymous access-to-controlled type to utilize the heterogeneous + master associated with the current unit. + 2011-12-12 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Analyze_Expression_Function): If the function diff --git a/gcc/ada/exp_ch4.adb b/gcc/ada/exp_ch4.adb index 12980a7..f45ea08 100644 --- a/gcc/ada/exp_ch4.adb +++ b/gcc/ada/exp_ch4.adb @@ -3510,11 +3510,10 @@ package body Exp_Ch4 is -- The finalization master must be inserted and analyzed as part of -- the current semantic unit. This form of expansion is not carried - -- out in Alfa mode because it is useless. + -- out in Alfa mode because it is useless. Note that the master is + -- updated when analysis changes current units. - if No (Finalization_Master (PtrT)) - and then not Alfa_Mode - then + if not Alfa_Mode then Set_Finalization_Master (PtrT, Current_Anonymous_Master); end if; end if; |