From 39edfb4572286b82d9bad3785a7ecaf8d49470a2 Mon Sep 17 00:00:00 2001 From: Javier Miranda Date: Fri, 9 Dec 2005 18:21:38 +0100 Subject: [PATCH] sem_ch8.adb (Find_Type): In case of tagged types that are concurrent types use the corresponding record type. 2005-12-05 Javier Miranda * sem_ch8.adb (Find_Type): In case of tagged types that are concurrent types use the corresponding record type. This was not needed before the implementation of Ada 2005 synchronized types because concurrent types were never tagged types in Ada 95. From-SVN: r108304 --- gcc/ada/sem_ch8.adb | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/ada/sem_ch8.adb b/gcc/ada/sem_ch8.adb index a0b0f38e603..9af04a761da 100644 --- a/gcc/ada/sem_ch8.adb +++ b/gcc/ada/sem_ch8.adb @@ -4684,7 +4684,13 @@ package body Sem_Ch8 is -- Case of tagged type else - C := Class_Wide_Type (Entity (Prefix (N))); + if Is_Concurrent_Type (T) then + C := Class_Wide_Type + (Corresponding_Record_Type (Entity (Prefix (N)))); + else + C := Class_Wide_Type (Entity (Prefix (N))); + end if; + Set_Entity_With_Style_Check (N, C); Generate_Reference (C, N); Set_Etype (N, C); -- 2.30.2