[Type checker] Warn deprecated @objc used to satisfy protocol requirements.
Warn about uses of declarations which have inferred @objc due to the
deprecated Swift 3 rules when the declarations are used to satisfy a
requirement of an @objc protocol. This covers cases where the @objc
cannot be inferred due to the conformance, e.g., when the declaration
itself is in a superclass but a subclass is stating the conformance.
Fixes rdar://problem/32431838.
(cherry picked from commit c96da6800acf617c8c17dde99a95865348c9ca5a)