diff options
author | Ed Schonberg <schonberg@adacore.com> | 2007-06-06 12:28:07 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2007-06-06 12:28:07 +0200 |
commit | 0712790c364b9d0de4d023ebd22fa9249afc35d5 (patch) | |
tree | 2aac9a39bc29def98b761c1e19d629191da83b42 /gcc/ada/opt.adb | |
parent | 2ed216d057acc16f81871e00f710361e1f38c6ec (diff) | |
download | gcc-0712790c364b9d0de4d023ebd22fa9249afc35d5.zip gcc-0712790c364b9d0de4d023ebd22fa9249afc35d5.tar.gz gcc-0712790c364b9d0de4d023ebd22fa9249afc35d5.tar.bz2 |
exp_util.ads, [...] (Expand_Subtype_From_Expr): In Ada2005...
2007-04-20 Ed Schonberg <schonberg@adacore.com>
* exp_util.ads, exp_util.adb (Expand_Subtype_From_Expr): In Ada2005, an
object of a limited type can be initialized with a call to a function
that returns in place. If the limited type has unknown discriminants,
and the underlying type is a constrained composite type, build an actual
subtype from the function call, as is done for private types.
(Side_Effect_Free): An expression that is the renaming of an object or
whose prefix is the renaming of a object, is not side-effect free
because it may be assigned through the renaming and its value must be
captured in a temporary.
(Has_Controlled_Coextensions): New routine.
(Expand_Subtype_From_Expr): Do nothing if type is a limited interface,
as is done for other limited types.
(Non_Limited_Designated_Type): new predicate.
(Make_CW_Equivalent_Type): Modified to handle class-wide interface
objects.
Remove all handling of with_type clauses.
* par-ch10.adb: Remove all handling of with_type clauses.
* lib-load.ads, lib-load.adb (Load_Main_Source): Do not get the
checksum if the main source could not be parsed.
(Loat_Unit): When processing a child unit, determine properly whether
the parent unit is a renaming when the parent is itself a child unit.
Remove handling of with_type clauses.
* sinfo.ads, sinfo.adb (Is_Static_Coextension): New function.
(Set_Is_Static_Coextension): New procedure.
(Has_Local_Raise): New function
(Set_Has_Local_Raise): New procedure
(Renaming_Exception): New field
(Has_Init_Expression): New flag
(Delay_Finalize_Attach): Remove because flag is obsolete.
(Set_Delay_Finalize_Attach): Remove because flag is obsolete.
Remove all handling of with_type clauses.
(Exception_Junk): Can now be set in N_Block_Statement
From-SVN: r125410
Diffstat (limited to 'gcc/ada/opt.adb')
0 files changed, 0 insertions, 0 deletions