HomePhabricator

[objc_direct] also go through implementations when looking for clashes
1f4c8d4ec521Unpublished

Authored by MadCoder on Mar 23 2020, 3:10 PM.

Unpublished Commit ยท Learn More

Not On Permanent Ref: This commit is not an ancestor of any permanent ref.

Description

[objc_direct] also go through implementations when looking for clashes

Some methods are sometimes declared in the @implementation blocks which
can cause undiagnosed clashes.

Just write a checkObjCDirectMethodClashes() for this purpose.

Also make sure that "unavailable" selectors do not inherit
objc_direct_members.

Differential Revision: https://reviews.llvm.org/D76643
Signed-off-by: Pierre Habouzit <phabouzit@apple.com>
Radar-ID: rdar://problem/59332804, rdar://problem/59782963
(cherry picked from commit 20d704a75ed51c7a9a155aa3978d0c02671c3f69)