[gcc r16-1157] ada: Fix crash on access to protected return
Marc Poulhies
dkm@gcc.gnu.org
Thu Jun 5 08:22:20 GMT 2025
https://gcc.gnu.org/g:201fd7899da99767f88fbd75d61b20fdc0cc190d
commit r16-1157-g201fd7899da99767f88fbd75d61b20fdc0cc190d
Author: Ronan Desplanques <desplanques@adacore.com>
Date: Mon Jan 27 12:04:41 2025 +0100
ada: Fix crash on access to protected return
The generation of the check mandated by Ada issue AI05-0073 was not done
handled properly for protected types when used through subtypes. This
patch fixes the issue.
gcc/ada/ChangeLog:
* exp_ch4.adb (Tagged_Membership): Fix for protected types.
Diff:
---
gcc/ada/exp_ch4.adb | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/gcc/ada/exp_ch4.adb b/gcc/ada/exp_ch4.adb
index 8c724844eb32..eb9fb6bba569 100644
--- a/gcc/ada/exp_ch4.adb
+++ b/gcc/ada/exp_ch4.adb
@@ -15036,10 +15036,11 @@ package body Exp_Ch4 is
-- Handle entities from the limited view
- Orig_Right_Type : constant Entity_Id := Available_View (Etype (Right));
+ Orig_Right_Type : constant Entity_Id :=
+ Base_Type (Available_View (Etype (Right)));
Full_R_Typ : Entity_Id;
- Left_Type : Entity_Id := Available_View (Etype (Left));
+ Left_Type : Entity_Id := Base_Type (Available_View (Etype (Left)));
Right_Type : Entity_Id := Orig_Right_Type;
Obj_Tag : Node_Id;
More information about the Gcc-cvs
mailing list