2018-07-16 Javier Miranda <miranda@adacore.com>
gcc/ada/
* exp_attr.adb (Expand_N_Attribute_Reference ['Count]): Do not
transform 'Count into a function call if the current scope has been
eliminated.
From-SVN: r262703
2018-07-16 Javier Miranda <miranda@adacore.com>
+ * exp_attr.adb (Expand_N_Attribute_Reference ['Count]): Do not
+ transform 'Count into a function call if the current scope has been
+ eliminated.
+
+2018-07-16 Javier Miranda <miranda@adacore.com>
+
* sem_util.ads, sem_util.adb (Has_Prefix): Move this function to the
public part of this package.
-- Protected case
if Is_Protected_Type (Conctyp) then
+
+ -- No need to transform 'Count into a function call if the current
+ -- scope has been eliminated. In this case such transformation is
+ -- also not viable because the enclosing protected object is not
+ -- available.
+
+ if Is_Eliminated (Current_Scope) then
+ return;
+ end if;
+
case Corresponding_Runtime_Package (Conctyp) is
when System_Tasking_Protected_Objects_Entries =>
Name := New_Occurrence_Of (RTE (RE_Protected_Count), Loc);