summaryrefslogtreecommitdiff
path: root/gcc/ada/sem_ch7.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2011-12-21 13:51:03 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2011-12-21 13:51:03 +0000
commit192b8dab8a1e8131634b977cce11e6eca8447540 (patch)
tree3954a53c4489b3a57bd7059ad7f7285d618d3db4 /gcc/ada/sem_ch7.adb
parentd8ba53a8b11f4d7bcc5c54d6e2ad76cbebffb09d (diff)
downloadgcc-192b8dab8a1e8131634b977cce11e6eca8447540.tar.gz
2011-12-21 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb (Report_No_Sources): Remove argument Lang. Report no sources even for languages that are not allowed. (Add_Source): Get the source even when the language is not allowed. 2011-12-21 Robert Dewar <dewar@adacore.com> * sem_ch6.adb (Process_Formals): Add defensive code. 2011-12-21 Ed Schonberg <schonberg@adacore.com> * sem_ch7.adb, sem_ch13.adb (Analyze_Package_Specification): Build the invariant procedure of a type declaration that is a completion and has aspect specifications. (Build_Invariant_Procedure): If the procedure is built for a type declaration that is a completion, analyze body expliitly because all private declarations have been already analyzed. 2011-12-21 Claire Dross <dross@adacore.com> * a-cfdlli.adb, a-cfhase.adb, a-cforma.adb, a-cforse.adb, a-cofove.adb: Minor reformating on formal containers 2011-12-21 Vincent Celier <celier@adacore.com> * makeutl.adb (Mains.Complete_Mains.Do_Complete): Remove any main that is not in the list of restricted languages. (Insert_Project_Sources.Do_Insert): Only add sources of languages in the list of restricted languages. 2011-12-21 Ed Schonberg <schonberg@adacore.com> * sem_res.adb (Valid_Conversion): A type conversion is valid when the target type is an anonymous access type and the operand is a rewriting of an allocator. The conversion is typically inserted when the designated type is an interface. 2011-12-21 Ed Schonberg <schonberg@adacore.com> * exp_ch9.adb (Establish_Task_Master): If the enclosing block has no declarations, create new declarative list for it. 2011-12-21 Matthew Heaney <heaney@adacore.com> * a-rbtgbk.adb (Generic_Conditional_Insert): Fixed incorrect comment. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182586 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/sem_ch7.adb')
-rw-r--r--gcc/ada/sem_ch7.adb10
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ada/sem_ch7.adb b/gcc/ada/sem_ch7.adb
index 2f87cf07885..094837be97c 100644
--- a/gcc/ada/sem_ch7.adb
+++ b/gcc/ada/sem_ch7.adb
@@ -1378,6 +1378,16 @@ package body Sem_Ch7 is
("full view of & does not have preelaborable initialization", E);
end if;
+ -- An invariant may appear on a full view of a type
+
+ if Is_Type (E)
+ and then Has_Private_Declaration (E)
+ and then Nkind (Parent (E)) = N_Full_Type_Declaration
+ and then Has_Aspects (Parent (E))
+ then
+ Build_Invariant_Procedure (E, N);
+ end if;
+
Next_Entity (E);
end loop;