[PATCH] Fix bug in DynTypedMatcher::constructVariadic() that would cause false negatives.

Samuel Benzaquen sbenza at google.com
Thu Oct 2 08:19:24 PDT 2014


Hi klimek,

DynTypedMatcher::constructVariadic() where the restrict kind of the
different matchers are not related causes the matcher to have a "None"
restrict kind. This causes false negatives for anyOf and eachOf.
Change the logic to get a common anscestor (or the newly added
'anything' kind) if the types are not related.
Also added regression tests that fail without the fix.

http://reviews.llvm.org/D5580

Files:
  include/clang/AST/ASTTypeTraits.h
  lib/AST/ASTTypeTraits.cpp
  lib/ASTMatchers/ASTMatchersInternal.cpp
  unittests/AST/ASTTypeTraitsTest.cpp
  unittests/ASTMatchers/ASTMatchersTest.cpp
  unittests/ASTMatchers/Dynamic/RegistryTest.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D5580.14326.patch
Type: text/x-patch
Size: 12352 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20141002/a853044b/attachment.bin>


More information about the cfe-commits mailing list