This is the mail archive of the
mailing list for the GCC project.
r111060 - in /trunk/gcc/ada: exp_ch4.adb exp_ch...
- From: charlet at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Wed, 15 Feb 2006 09:38:10 -0000
- Subject: r111060 - in /trunk/gcc/ada: exp_ch4.adb exp_ch...
Date: Wed Feb 15 09:38:10 2006
New Revision: 111060
2006-02-13 Thomas Quinot <firstname.lastname@example.org>
Ed Schonberg <email@example.com>
* exp_ch4.adb (Expand_Allocator_Expression): Pass Allocator => True to
Make_Adjust_Call done for a newly-allocated object.
* exp_ch7.ads, exp_ch7.adb (Expand_Cleanup_Actions): If the statements
in a subprogram are wrapped in a cleanup block, indicate that the
subprogram contains an inner block with an exception handler.
(Make_Adjust_Call): New Boolean formal Allocator indicating whether the
Adjust call is for a newly-allocated object. In that case we must not
assume that the finalization list chain pointers are correct (since they
come from a bit-for-bit copy of the original object's pointers) so if
the attach level would otherwise be zero (no change), we set it to 4
instead to cause the pointers to be reset to null.
* s-finimp.adb (Attach_To_Final_List): New attach level: 4, meaning
reset chain pointers to null.