llvm-project/clang/unittests
Manuel Klimek fdf98763ac Fixes a bug for binding memoized match results.
Intorduces an abstraction for DynTypedNode which makes
is impossible to create in ways that introduced the bug;
also hides the implementation details of the template
magic away from the user and prepares the code for adding
QualType and TypeLoc bindings, as well as using DynTypedNode
instead of overloads for child and ancestor matching.

getNodeAs<T> was changed towards a non-pointer type, as
we'll want QualType and TypeLoc nodes to be returned
by value (the alternative would be to create new storage
which is prohibitively costly if we want to use it for
child / ancestor matching).

DynTypedNode is moved into a new header ASTTypeTraits.h,
as it is completely independent of the rest of the matcher
infrastructure - if the need comes up, we can move it to
a more common place.

The interface for users before the introduction of the
common storage change remains the same, minus the introduced
bug, for which a regression test was added.

llvm-svn: 162936
2012-08-30 19:41:06 +00:00
..
AST Reland r160052: Default to -std=c++11 on Windows. 2012-08-30 02:08:31 +00:00
ASTMatchers Fixes a bug for binding memoized match results. 2012-08-30 19:41:06 +00:00
Basic Clang side of a refactoring of the CMake unit test build strategy. 2012-06-21 09:51:42 +00:00
Frontend [ms-inline asm] Add various MC components to clang build to support MS-style inline assembly. 2012-08-09 17:17:01 +00:00
Lex Clang side of a refactoring of the CMake unit test build strategy. 2012-06-21 09:51:42 +00:00
Tooling Tooling: Add a runToolOnCodeWithArgs() function that allows 2012-08-30 02:02:19 +00:00
CMakeLists.txt add AST unittests to CMake build system 2012-07-23 20:11:34 +00:00
Makefile Adds the AST Matcher library, which provides a in-C++ DSL to express 2012-07-06 05:48:52 +00:00