From: Hristian Kirtchev Date: Thu, 31 Jul 2008 13:26:40 +0000 (+0200) Subject: sem_ch6.adb (Disambiguate_Spec): Continue the disambiguation if the corresponding... X-Git-Tag: releases/gcc-4.4.0~3562 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8198b93da51f3930d16298c7b9fd72f36a3343b7;p=thirdparty%2Fgcc.git sem_ch6.adb (Disambiguate_Spec): Continue the disambiguation if the corresponding spec is a primitive wrapper. 2008-07-31 Hristian Kirtchev * sem_ch6.adb (Disambiguate_Spec): Continue the disambiguation if the corresponding spec is a primitive wrapper. Update comment. From-SVN: r138406 --- diff --git a/gcc/ada/sem_ch6.adb b/gcc/ada/sem_ch6.adb index 33cb73d9a569..6583b72537db 100644 --- a/gcc/ada/sem_ch6.adb +++ b/gcc/ada/sem_ch6.adb @@ -1564,9 +1564,14 @@ package body Sem_Ch6 is -- Subprogram_Specification. In such cases, we undo the change -- made by the analysis of the specification and try to find the -- spec again. + -- Note that wrappers already have their corresponding specs and + -- bodies set during their creation, so if the candidate spec is + -- a wrapper, then we definately need to swap all types to their + -- original concurrent status. - if No (Spec_N) then - + if No (Spec_N) + or else Is_Primitive_Wrapper (Spec_N) + then -- Restore all references of corresponding record types to the -- original concurrent types.