aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/sem_ch3.adb
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2015-02-20 10:08:30 +0100
committerArnaud Charlet <charlet@gcc.gnu.org>2015-02-20 10:08:30 +0100
commit07a64c021a8fbd6df4d411b9852cfa95afb1cf08 (patch)
tree004a9fe35a9f9bd2e48653c6dd78f6166ff6c825 /gcc/ada/sem_ch3.adb
parent283b768c860d632cb50af82a459a9f4c985f3cbf (diff)
downloadgcc-07a64c021a8fbd6df4d411b9852cfa95afb1cf08.zip
gcc-07a64c021a8fbd6df4d411b9852cfa95afb1cf08.tar.gz
gcc-07a64c021a8fbd6df4d411b9852cfa95afb1cf08.tar.bz2
[multiple changes]
2015-02-20 Robert Dewar <dewar@adacore.com> * sem_res.adb: Minor reformatting. * exp_ch9.adb (Build_Protected_Spec): Copy Aliased setting when building spec. * sem_ch13.adb (Analyze_Aspect_Specifications): Exclude Boolean aspects from circuitry setting delay required to false if the argument is an integer literal. 2015-02-20 Ed Schonberg <schonberg@adacore.com> * einfo.ads. einfo.adb (Partial_View_Has_Unknown_Discr): New flag on type entities, to enforce AI12-0133: default initialization of types whose partial view has unknown discriminants does not get an invariant check, because clients of the unit can never declare objects of such types. * sem_ch3.adb (Find_Type_Name); Set new flag Partial_View_Has_Unknown_Discr when needed. * exp_ch3.adb (Expand_N_Object_Declaration): Use flag to suppress generation of invariant call on default-initialized object. From-SVN: r220836
Diffstat (limited to 'gcc/ada/sem_ch3.adb')
-rw-r--r--gcc/ada/sem_ch3.adb7
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ada/sem_ch3.adb b/gcc/ada/sem_ch3.adb
index 5aa5fe0..a017734 100644
--- a/gcc/ada/sem_ch3.adb
+++ b/gcc/ada/sem_ch3.adb
@@ -16459,6 +16459,13 @@ package body Sem_Ch3 is
Set_Has_Private_Declaration (Prev);
Set_Has_Private_Declaration (Id);
+ -- AI12-0133 : indicate whether we have a partial view with
+ -- unknown discriminants, in which case initialization of objects
+ -- of the type do not receive an invariant check.
+
+ Set_Partial_View_Has_Unknown_Discr
+ (Prev, Has_Unknown_Discriminants (Id));
+
-- Preserve aspect and iterator flags that may have been set on
-- the partial view.