From c936305076919e6e7fcf7e8c6332c897571a2894 Mon Sep 17 00:00:00 2001 From: Justin Squirek Date: Thu, 11 Apr 2024 19:13:52 +0000 Subject: [PATCH] ada: Crash checking accessibility level on private type This patch fixes an issue in the compiler whereby calculating a static accessibility level on a private type with an access discriminant resulted in a compile time crash when No_Dynamic_Accessibility_Checks is enabled. gcc/ada/ * accessibility.adb (Accessibility_Level): Use Get_Full_View to avoid crashes when calculating scope. --- gcc/ada/accessibility.adb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/ada/accessibility.adb b/gcc/ada/accessibility.adb index 33ce001718a..47b3a7af10a 100644 --- a/gcc/ada/accessibility.adb +++ b/gcc/ada/accessibility.adb @@ -2227,7 +2227,7 @@ package body Accessibility is -- that of the type. elsif Ekind (Def_Ent) = E_Discriminant then - return Scope_Depth (Scope (Def_Ent)); + return Scope_Depth (Get_Full_View (Scope (Def_Ent))); end if; end if; -- 2.47.2