When scanning for annotations on a class that implements a generic interface where the generic
type is specified in the implementing class, annotation scanning would fail to identify annotations
from the interface since the parameter types do not match.
It turns out that #21271 makes this straightforward and efficient to implement, so I'll even backport this to 5.0.8. The pain is that an assignability check is not sufficient here; we'll have to go through generics resolution for the type variable to make sure that our concrete method actually overrides the given interface methods (i.e. that it is not just an overloaded variant of it).