In this code, we use ~0U as a sentinel value for any operand class that doesn't
have a user-friendly error message, but this value isn't in range of the
MatchClassKind enum, so we need to ensure it does not get passed to isSubclass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@314793
91177308-0d34-0410-b5e6-
96231b3b80d8
if (std::any_of(PrevReports.first, PrevReports.second,
[DupCheckMatchClass](
const std::pair<unsigned, unsigned> Pair) {
- if (DupCheckMatchClass == ~0U)
- return Pair.second == ~0U;
+ if (DupCheckMatchClass == ~0U || Pair.second == ~0U)
+ return Pair.second == DupCheckMatchClass;
else
return isSubclass((MatchClassKind)DupCheckMatchClass,
(MatchClassKind)Pair.second);