When a use type clause is used then it makes the type and
all of its operators use visible in the context. When analyzing
whether a use type clause is effective we should additionally
mark the types of an overloaded operator as cases where the
use type clause is effective.
gcc/ada/ChangeLog:
* sem_ch8.adb (Mark_Use_Type): Additionally mark the types
of the parameters and return values as used when analyzing an
operator.
and then Present (Scope (Entity (E)))
then
Mark_Use_Package (Scope (Entity (E)));
+
+ -- Additionally mark the types of the formals and the return
+ -- types as used when dealing with an overloaded operator.
+
+ Mark_Parameters (Entity (E));
end if;
Curr := Current_Use_Clause (Base);