This is an archive of the discontinued LLVM Phabricator instance.

[objc_direct] also go through implementations when looking for clashes
ClosedPublic

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

Details

Summary

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.

Signed-off-by: Pierre Habouzit <phabouzit@apple.com>
Radar-ID: rdar://problem/59332804, rdar://problem/59782963

Diff Detail

Event Timeline

MadCoder created this revision.Mar 23 2020, 3:15 PM
Herald added a project: Restricted Project. · View Herald TranscriptMar 23 2020, 3:15 PM
Herald added a subscriber: cfe-commits. · View Herald Transcript
MadCoder updated this revision to Diff 252162.Mar 23 2020, 3:35 PM
MadCoder edited the summary of this revision. (Show Details)
erik.pilkington accepted this revision.Mar 23 2020, 5:53 PM

LGTM

clang/lib/Sema/SemaDeclObjC.cpp
4621

"in the"

This revision is now accepted and ready to land.Mar 23 2020, 5:53 PM
This revision was automatically updated to reflect the committed changes.