diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2015-05-26 10:15:24 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2015-05-26 10:15:24 +0200 |
commit | c859345327b2c2858ae8a120d2b714d928b43130 (patch) | |
tree | 581bde70e3975c92ecbf185b6e851dcc262fcddd /gcc/ada/aspects.ads | |
parent | 2945460b983487c6b61a79dba21a6f621aced345 (diff) | |
download | gcc-c859345327b2c2858ae8a120d2b714d928b43130.zip gcc-c859345327b2c2858ae8a120d2b714d928b43130.tar.gz gcc-c859345327b2c2858ae8a120d2b714d928b43130.tar.bz2 |
[multiple changes]
2015-05-26 Robert Dewar <dewar@adacore.com>
* aspects.ads, aspects.adb: Add aspect Disable_Controlled.
* einfo.ads, einfo.adb (Disable_Controlled): New flag.
(Is_Controlled_Active): New function.
* exp_ch3.adb (Expand_Freeze_Record_Type): Use
Is_Controlled_Active.
* exp_util.adb (Needs_Finalization): Finalization not needed
if Disable_Controlled set.
* freeze.adb (Freeze_Array_Type): Do not set
Has_Controlled_Component if the component has Disable_Controlled.
(Freeze_Record_Type): ditto.
* sem_ch13.adb (Decorate): Minor reformatting.
(Analyze_Aspect_Specifications): Implement Disable_Controlled.
* sem_ch3.adb (Analyze_Object_Declaration): Handle
Disable_Controlled.
(Array_Type_Declaration): ditto.
(Build_Derived_Private_Type): ditto.
(Build_Derived_Type): ditto.
(Record_Type_Definition): ditto.
* snames.ads-tmpl: Add Name_Disable_Controlled.
2015-05-26 Eric Botcazou <ebotcazou@adacore.com>
* exp_ch6.adb (Expand_Actuals): Use a constant declaration instead
of a renaming to capture the return value of a function call.
(Expand_Simple_Function_Return): Call Remove_Side_Effects
instead of removing side effects manually before the call to
_Postconditions.
From-SVN: r223667
Diffstat (limited to 'gcc/ada/aspects.ads')
-rw-r--r-- | gcc/ada/aspects.ads | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/ada/aspects.ads b/gcc/ada/aspects.ads index 41fa9610..e215622 100644 --- a/gcc/ada/aspects.ads +++ b/gcc/ada/aspects.ads @@ -171,6 +171,7 @@ package Aspects is Aspect_Asynchronous, Aspect_Atomic, Aspect_Atomic_Components, + Aspect_Disable_Controlled, -- GNAT Aspect_Discard_Names, Aspect_Effective_Reads, -- GNAT Aspect_Effective_Writes, -- GNAT @@ -414,6 +415,7 @@ package Aspects is Aspect_Depends => Name_Depends, Aspect_Dimension => Name_Dimension, Aspect_Dimension_System => Name_Dimension_System, + Aspect_Disable_Controlled => Name_Disable_Controlled, Aspect_Discard_Names => Name_Discard_Names, Aspect_Dispatching_Domain => Name_Dispatching_Domain, Aspect_Dynamic_Predicate => Name_Dynamic_Predicate, @@ -704,6 +706,7 @@ package Aspects is Aspect_Depends => Never_Delay, Aspect_Dimension => Never_Delay, Aspect_Dimension_System => Never_Delay, + Aspect_Disable_Controlled => Never_Delay, Aspect_Effective_Reads => Never_Delay, Aspect_Effective_Writes => Never_Delay, Aspect_Extensions_Visible => Never_Delay, |