summaryrefslogtreecommitdiff
path: root/gcc/ada/exp_ch3.ads
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2010-06-14 10:09:30 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2010-06-14 10:09:30 +0000
commit950e1932979ddd9f1b7d3b8ba919048b385e1393 (patch)
tree35b9368d0b998fbaf7bbcf8ec4e412bbf25e9bac /gcc/ada/exp_ch3.ads
parentd3230a149cd62fb1f5a5c0d5ce5df12901a2a4b4 (diff)
downloadgcc-950e1932979ddd9f1b7d3b8ba919048b385e1393.tar.gz
2010-06-14 Robert Dewar <dewar@adacore.com>
* opt.ads, sem.adb, sem_elab.adb: Minor reformatting 2010-06-14 Robert Dewar <dewar@adacore.com> * exp_aggr.adb (Has_Address_Clause): Moved to Exp_Util, and there it is renamed as Has_Following_Address_Clause. * exp_ch3.adb (Needs_Simple_Initialization): Add Consider_IS argument to allow the caller to avoid Initialize_Scalars having an effect. (Expand_N_Object_Declaration): Do not do Initialize_Scalars stuff for scalars with an address clause specified. * exp_ch3.ads (Needs_Simple_Initialization): Add Consider_IS argument to allow the caller to avoid Initialize_Scalars having an effect. * exp_util.adb (Has_Following_Address_Clause): Moved here from Exp_Aggr (where it was called Has_Address_Clause). * exp_util.ads (Has_Following_Address_Clause): Moved here from Exp_Aggr (where it was called Has_Address_Clause). * freeze.adb (Warn_Overlay): Suppress message about overlaying causing problems for Initialize_Scalars (since we no longer initialize objects with an address clause. 2010-06-14 Robert Dewar <dewar@adacore.com> * exp_prag.adb (Expand_Pragma_Check): Set Loc of generated code from condition. 2010-06-14 Gary Dismukes <dismukes@adacore.com> * sem_ch6.adb (Analyze_Subprogram_Body_Helper): Set Debug_Info_Needed on the entity of an implicitly generated postcondition procedure. 2010-06-14 Thomas Quinot <quinot@adacore.com> * sem_ch7.adb (Preserve_Full_Attributes): Propagate Discriminant_Constraint elist from full view to private view. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160720 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/exp_ch3.ads')
-rw-r--r--gcc/ada/exp_ch3.ads8
1 files changed, 6 insertions, 2 deletions
diff --git a/gcc/ada/exp_ch3.ads b/gcc/ada/exp_ch3.ads
index 6738ae958f9..9b838b0b652 100644
--- a/gcc/ada/exp_ch3.ads
+++ b/gcc/ada/exp_ch3.ads
@@ -126,14 +126,18 @@ package Exp_Ch3 is
-- then tags components located at variable positions of Target are
-- initialized.
- function Needs_Simple_Initialization (T : Entity_Id) return Boolean;
+ function Needs_Simple_Initialization
+ (T : Entity_Id;
+ Consider_IS : Boolean := True) return Boolean;
-- Certain types need initialization even though there is no specific
-- initialization routine. In this category are access types (which need
-- initializing to null), packed array types whose implementation is a
-- modular type, and all scalar types if Normalize_Scalars is set, as well
-- as private types whose underlying type is present and meets any of these
-- criteria. Finally, descendants of String and Wide_String also need
- -- initialization in Initialize/Normalize_Scalars mode.
+ -- initialization in Initialize/Normalize_Scalars mode. Consider_IS is
+ -- normally True. If it is False, the Initialize_Scalars is not considered
+ -- in determining whether simple initialization is needed.
function Get_Simple_Init_Val
(T : Entity_Id;