If you just exit EqualityComparer<T> , you have nothing to worry about, because it implements both IEqualityComparer and IEqualityComparer<T> . Thus, you get weak typing for free when you implement strong typing.
However, it is unlikely that you will need a weakly typed version. Only a few BCL classes use it, and they are not common.
source share