diff --git a/gcc/ada/exp_dist.adb b/gcc/ada/exp_dist.adb index 14136fd4acf0562d9189aeca87b447ba0193edc6..b723ea1cc9826ced9cd2702df4b459e28a17ed2b 100644 --- a/gcc/ada/exp_dist.adb +++ b/gcc/ada/exp_dist.adb @@ -9148,10 +9148,11 @@ package body Exp_Dist is (RTE (RE_Release_Buffer), Loc), Parameter_Associations => New_List (New_Occurrence_Of (Strm, Loc))), + Make_Simple_Return_Statement (Loc, Expression => New_Occurrence_Of (Res, Loc)))))); - else + else -- declare -- Res : T; -- begin @@ -9179,16 +9180,17 @@ package body Exp_Dist is Prefix => New_Occurrence_Of (Strm, Loc), Attribute_Name => Name_Access), - New_Occurrence_Of (Res, Loc))), + New_Occurrence_Of (Res, Loc))), + Make_Procedure_Call_Statement (Loc, Name => New_Occurrence_Of (RTE (RE_Release_Buffer), Loc), Parameter_Associations => New_List (New_Occurrence_Of (Strm, Loc))), + Make_Simple_Return_Statement (Loc, Expression => New_Occurrence_Of (Res, Loc)))))); - end if; end; end if; diff --git a/gcc/ada/sem_ch4.adb b/gcc/ada/sem_ch4.adb index 0808288fab3b52c95946d1b455e77347411d3049..358541afa645811d6a7871fe149f5fda72e9507c 100644 --- a/gcc/ada/sem_ch4.adb +++ b/gcc/ada/sem_ch4.adb @@ -2661,8 +2661,7 @@ package body Sem_Ch4 is Set_Etype (Nam, It.Typ); else - - -- Nnamed access type in the context of a renaming + -- Named access type in the context of a renaming -- declaration with an access definition. Remove -- inapplicable candidate.