Commit ecda544d by Ed Schonberg Committed by Arnaud Charlet

sem_res.adb (Resolve_Entry_Call): When an entry has preconditions...

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

	* sem_res.adb (Resolve_Entry_Call): When an entry has
	preconditions, the entry call is wrapped in a procedure call
	that incorporates the precondition checks. To prevent a double
	expansion, with possible duplication of extra formals, that
	procedure call must only be pre-analyzed and resolved. Expansion
	takes place upon return to the caller Resolve_Call.

From-SVN: r213461
parent 10671e7a
2014-08-01 Ed Schonberg <schonberg@adacore.com>
* sem_res.adb (Resolve_Entry_Call): When an entry has
preconditions, the entry call is wrapped in a procedure call
that incorporates the precondition checks. To prevent a double
expansion, with possible duplication of extra formals, that
procedure call must only be pre-analyzed and resolved. Expansion
takes place upon return to the caller Resolve_Call.
2014-08-01 Hristian Kirtchev <kirtchev@adacore.com>
* sem_res.adb (Resolve_Call): Do not perform
......
......@@ -7176,7 +7176,11 @@ package body Sem_Res is
New_Occurrence_Of (PPC_Wrapper (Nam), Loc),
Parameter_Associations => New_Actuals);
Rewrite (N, New_Call);
Analyze_And_Resolve (N);
-- Preanalyze and resolve new call. Current procedure is called
-- from Resolve_Call, after which expansion will take place.
Preanalyze_And_Resolve (N);
return;
end;
end if;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment