Adding manual calls to Covers in the callers overlooks the overloaded case, so this follow-up change adds back the reversed calls to Has_Compatible_Type but guard them with a boolean flag set to true for comparison operators. Tested on x86_64-pc-linux-gnu, committed on trunk gcc/ada/ * sem_type.ads (Has_Compatible_Type): Add For_Comparison parameter. * sem_type.adb (Has_Compatible_Type): Put back the reversed calls to Covers guarded with For_Comparison. * sem_ch4.adb (Analyze_Membership_Op) : Remove new reversed call to Covers and set For_Comparison to true instead. (Find_Comparison_Types) : Likewise (Find_Equality_Types) : Likewise.