Commit 8ca3bf91 by Gary Dismukes Committed by Arnaud Charlet

exp_ch6.adb (Expand_Call): Adjustment to previous fix for passing correct accessibility levels.

2008-08-01  Gary Dismukes  <dismukes@adacore.com>

	* exp_ch6.adb (Expand_Call): Adjustment to previous fix for passing
	correct accessibility levels. In the "when others" case, retrieve the
	access level of the Etype of Prev rather than Prev_Orig, because the
	original exression has not always been analyzed.

From-SVN: r138493
parent f252a7d6
......@@ -2284,13 +2284,15 @@ package body Exp_Ch6 is
Intval => Scope_Depth (Current_Scope) + 1),
Extra_Accessibility (Formal));
-- For other cases we simply pass the level of the
-- actual's access type.
-- For other cases we simply pass the level of the actual's
-- access type. The type is retrieved from Prev rather than
-- Prev_Orig, because in some cases Prev_Orig denotes a
-- original expression that has not been analyzed.
when others =>
Add_Extra_Actual
(Make_Integer_Literal (Loc,
Intval => Type_Access_Level (Etype (Prev_Orig))),
Intval => Type_Access_Level (Etype (Prev))),
Extra_Accessibility (Formal));
end case;
......
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