2005-12-05 Javier Miranda <miranda@adacore.com>
* 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
-- 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);