sem_ch6.adb: sem_ch6.adb (Set_Actual_Subtypes): If the type has a dynamic predicate...

2014-01-27  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb: sem_ch6.adb (Set_Actual_Subtypes): If the type
	has a dynamic predicate, generate freeze node for Actual_Subtype
	at once, because the declaration of the corresponding predicate
	function will make reference to it.

From-SVN: r207145
This commit is contained in:
Ed Schonberg 2014-01-27 16:55:30 +00:00 committed by Arnaud Charlet
parent 8b4230c823
commit fcadacf7bf
2 changed files with 14 additions and 0 deletions

View File

@ -1,3 +1,10 @@
2014-01-27 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb: sem_ch6.adb (Set_Actual_Subtypes): If the type
has a dynamic predicate, generate freeze node for Actual_Subtype
at once, because the declaration of the corresponding predicate
function will make reference to it.
2014-01-27 Tristan Gingold <gingold@adacore.com>
* exp_ch7.adb, exp_ch9.adb: Adjust comments.

View File

@ -11491,6 +11491,13 @@ package body Sem_Ch6 is
if Present (First_Stmt) then
Insert_List_Before_And_Analyze (First_Stmt,
Freeze_Entity (Defining_Identifier (Decl), N));
-- Ditto if the type has a dynamic predicate, because the
-- generated function will mention the actual subtype.
elsif Has_Dynamic_Predicate_Aspect (T) then
Insert_List_Before_And_Analyze (Decl,
Freeze_Entity (Defining_Identifier (Decl), N));
end if;
if Nkind (N) = N_Accept_Statement