[multiple changes]

2010-06-17  Ben Brosgol  <brosgol@adacore.com>

	* gnat_ugn.texi: Update gnatcheck doc.

2010-06-17  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Build_Incomplete_Type_Declaration): If there is an
	incomplete view of the type that is not tagged, and the full type is a
	tagged extension, create class_wide type now, and warn that the
	incomplete view should be tagged as well.

From-SVN: r160913
This commit is contained in:
Arnaud Charlet 2010-06-17 15:23:55 +02:00
parent aa9ea6a1ac
commit b07607395a
3 changed files with 26 additions and 1801 deletions

View File

@ -1,3 +1,14 @@
2010-06-17 Ben Brosgol <brosgol@adacore.com>
* gnat_ugn.texi: Update gnatcheck doc.
2010-06-17 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Build_Incomplete_Type_Declaration): If there is an
incomplete view of the type that is not tagged, and the full type is a
tagged extension, create class_wide type now, and warn that the
incomplete view should be tagged as well.
2010-06-17 Vincent Celier <celier@adacore.com>
* gnatcmd.adb (Non_VMS_Usage): Do not issue usage for gnat sync.

File diff suppressed because it is too large Load Diff

View File

@ -17484,6 +17484,15 @@ package body Sem_Ch3 is
and then Ekind (Current_Entity (Typ)) = E_Incomplete_Type
and then Full_View (Current_Entity (Typ)) = Typ
then
if Is_Tagged
and then Comes_From_Source (Current_Entity (Typ))
and then not Is_Tagged_Type (Current_Entity (Typ))
then
Make_Class_Wide_Type (Typ);
Error_Msg_N
("incomplete view of tagged type should be declared tagged?",
Parent (Current_Entity (Typ)));
end if;
return;
else