re PR ada/21489 (Wrong code generated for legal program, RM 6.4.1(13), 9.5.1(3), 9.5.3(8))
gcc/ada/ PR ada/21489 * exp_ch9.adb (Build_Simple_Entry_Call): Initialize OUT access type parameters of an entry call. gcc/testsuite/ PR ada/21489 * gnat.dg/rm_6_4_1_13.adb: New test. From-SVN: r130617
This commit is contained in:
parent
c3220d4c93
commit
07c7262ec3
@ -1,3 +1,9 @@
|
||||
2007-12-05 Samuel Tardieu <sam@rfc1149.net>
|
||||
|
||||
PR ada/21489
|
||||
* exp_ch9.adb (Build_Simple_Entry_Call): Initialize OUT access type
|
||||
parameters of an entry call.
|
||||
|
||||
2007-12-03 Robert Dewar <dewar@adacore.com>
|
||||
Samuel Tardieu <sam@rfc1149.net>
|
||||
|
||||
|
@ -3024,8 +3024,12 @@ package body Exp_Ch9 is
|
||||
-- We have to make an assignment statement separate for the
|
||||
-- case of limited type. We cannot assign it unless the
|
||||
-- Assignment_OK flag is set first.
|
||||
-- An out formal of an access type must also be initialized
|
||||
-- from the actual, as stated in RM 6.4.1 (13).
|
||||
|
||||
if Ekind (Formal) /= E_Out_Parameter then
|
||||
if Ekind (Formal) /= E_Out_Parameter
|
||||
or else Is_Access_Type (Etype (Formal))
|
||||
then
|
||||
N_Var :=
|
||||
New_Reference_To (Defining_Identifier (N_Node), Loc);
|
||||
Set_Assignment_OK (N_Var);
|
||||
|
@ -1,3 +1,8 @@
|
||||
2007-12-05 Samuel Tardieu <sam@rfc1149.net>
|
||||
|
||||
PR ada/21489
|
||||
* gnat.dg/rm_6_4_1_13.adb: New test.
|
||||
|
||||
2007-12-04 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR middle-end/34134
|
||||
|
Loading…
Reference in New Issue
Block a user