[gcc(refs/users/guojiufu/heads/guojiufu-branch)] [Ada] Add missing conversion in call to Finalize primitive
Jiu Fu Guo
guojiufu@gcc.gnu.org
Wed Jun 10 03:33:37 GMT 2020
https://gcc.gnu.org/g:25a76d621a4b6e324777677c8a5a81c09da2db9d
commit 25a76d621a4b6e324777677c8a5a81c09da2db9d
Author: Eric Botcazou <ebotcazou@adacore.com>
Date: Wed Jan 29 16:15:09 2020 +0100
[Ada] Add missing conversion in call to Finalize primitive
2020-06-04 Eric Botcazou <ebotcazou@adacore.com>
gcc/ada/
* exp_ch7.adb (Make_Final_Call): Set the type of the object, if
it is unanalyzed, before calling Convert_View on it.
Diff:
---
gcc/ada/exp_ch7.adb | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/gcc/ada/exp_ch7.adb b/gcc/ada/exp_ch7.adb
index fbdef9be497..ed4e8c570e6 100644
--- a/gcc/ada/exp_ch7.adb
+++ b/gcc/ada/exp_ch7.adb
@@ -8432,6 +8432,15 @@ package body Exp_Ch7 is
end if;
end;
+ -- If the object is unanalyzed, set its expected type for use in
+ -- Convert_View in case an additional conversion is needed.
+
+ if No (Etype (Ref))
+ and then Nkind (Ref) /= N_Unchecked_Type_Conversion
+ then
+ Set_Etype (Ref, Typ);
+ end if;
+
Ref := Convert_View (Fin_Id, Ref);
end if;
More information about the Gcc-cvs
mailing list