HomePhabricator

[Sema][ObjC] Complete merging ObjC methods before checking their overriding…

Authored by ahatanak on Oct 12 2017, 4:24 PM.

Description

[Sema][ObjC] Complete merging ObjC methods before checking their overriding methods.

This should fix test case Analysis/retain-release.m that was failing on
the reverse iteration bot:

http://lab.llvm.org:8011/builders/reverse-iteration

The test used to fail because the loop in CheckObjCMethodOverrides would
merge attribute ns_returns_retained on methods while checking whether
the overriding methods were compatible. Since OverrideSearch::Overridden
is a SmallPtrSet and the order in which the elements of the set are
visited is non-deterministic, the test would fail when method 'clone' of
the protocol 'F18P' was visited before F18(Cat)'s method 'clone' was
visited.

llvm-svn: 315639

Details

Committed
ahatanakOct 12 2017, 4:24 PM
Parents
rG883f22ef7e5b: [Sema][Crash] Correctly handle an non-dependent noexcept expr in function…
Branches
Unknown
Tags
Unknown