llvm-capstone/clang/lib/ASTMatchers
Ilya Biryukov f5cb9cb59d
[ASTMatchers] Fix classIsDerivedFrom for recusrive cases (#67307)
By ensuring the base is only visited once. This avoids infinite
recursion and expontential running times in some corner cases.

See the added tests for examples.

Apart from the cases that caused infinite recursion and used to crash,
this change is an NFC and results of the matchers are the same.
2023-09-25 12:10:29 +02:00
..
Dynamic [clang][ASTMatcher] Add matcher for 'MacroQualifiedType' 2023-08-16 18:03:16 +08:00
ASTMatchersInternal.cpp [clang][ASTMatcher] Add matcher for 'MacroQualifiedType' 2023-08-16 18:03:16 +08:00
ASTMatchFinder.cpp [ASTMatchers] Fix classIsDerivedFrom for recusrive cases (#67307) 2023-09-25 12:10:29 +02:00
CMakeLists.txt cmake: add missing dependencies on ClangDriverOptions tablegen 2023-08-04 10:27:19 -07:00
GtestMatchers.cpp