History log of /external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
ef8225444452a1486bd721f3285301fe84643b00 21-Jul-2014 Stephen Hines <srhines@google.com> Update Clang for rebase to r212749.

This also fixes a small issue with arm_neon.h not being generated always.

Includes a cherry-pick of:
r213450 - fixes mac-specific header issue
r213126 - removes a default -Bsymbolic on Android

Change-Id: I2a790a0f5d3b2aab11de596fc3a74e7cbc99081d
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
6bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89 29-May-2014 Stephen Hines <srhines@google.com> Update Clang for 3.5 rebase (r209713).

Change-Id: I8c9133b0f8f776dc915f270b60f94962e771bc83
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
651f13cea278ec967336033dd032faef0e9fc2ec 24-Apr-2014 Stephen Hines <srhines@google.com> Updated to Clang 3.5a.

Change-Id: I8127eb568f674c2e72635b639a3295381fe8af82
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
0bb3ca348517516a92579526b7f878279f33f32e 12-Sep-2013 Michael Han <fragmentshaders@gmail.com> Add a test case to test RAV visits parameters of implicit copy constructor.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190632 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
4b6730d40e7c603bd0e223d3fa8b56a0c88a324a 11-Sep-2013 Michael Han <fragmentshaders@gmail.com> Teach RAV to visit parameter variable declarations of implicit functions. Fixes PR16182.

Normally RAV visits parameter variable declarations of a function by traversing the TypeLoc of
the parameter declarations. However, for implicit functions, their parameters don't have any
TypeLoc, because they are implicit.

So for implicit functions, we visit their parameter variable declarations by traversing them through
the function declaration, and visit them accordingly.

Reviewed by Richard Smith and Manuel Klimek.




git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190528 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
e3efec20260ea7a0071e2ae6eedf3c2865e476d3 05-Sep-2013 James Dennett <jdennett@google.com> Mark lambda closure classes as being implicitly-generated.

Summary: Closure classes for C++ lambdas are always compiler-generated. This one-line change calls setImplicit(true) on them at creation time, such that a default RecursiveASTVisitor (or any for which shouldVisitImplicitCode returns false) will skip them.

Reviewers: rsmith, dblaikie

Reviewed By: dblaikie

CC: klimek, revane, cfe-commits, jordan_rose

Differential Revision: http://llvm-reviews.chandlerc.com/D1593

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@190073 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
f68af647dda5cca00b49be27d24f62b0a7fff986 10-Aug-2013 James Dennett <jdennett@google.com> Expose LambdaIntroducer::DefaultLoc in the AST's LambdaExpr.

Summary:
Source-centric tools need access to the location of a C++11
lambda expression's capture-default ('&' or '=') when it's present.
It's possible for them to find it by re-lexing and re-implementing
rules that Clang's parser has already applied, but the cost of storing
the SourceLocation and making it available to them is 32 bits per
LambdaExpr (a small delta, proportionally), and the simplification in
client code is significant.

Reviewers: rsmith

Reviewed By: rsmith

CC: cfe-commits, klimek, revane

Differential Revision: http://llvm-reviews.chandlerc.com/D1192

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@188121 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
49007d7561212c0ae168702c1af1404c01ef43ff 10-Jul-2013 James Dennett <jdennett@google.com> Add a hook RecursiveASTVisitor::TraverseLambdaBody, to enable visitors to
use/maintain additional state from the LambdaExpr while visiting the body
of a LambdaExpr.

One use for this arises because Clang's AST currently holds lambda bodies
in a form prior to their adjustment to refer to captured copies of local
variables, and so some clients will need access to the lambda's closure
type in order to query how to map VarDecl*s to the FieldDecls of their
by-copy captures. This hook is sufficient for at least one such client;
to do this without such a hook would require the client to re-implement
the whole of TraverseLambdaExpr, which is non-trivial and would likely be
more brittle.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186024 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
89faf86c6e23ed62519dfe369f8ea408df1cb02e 30-Jun-2013 James Dennett <jdennett@google.com> Bug fix: Make RecursiveASTVisitor<T>::TraverseLambdaExpr call
WalkUpFromLambdaExpr, so that the Visit* functions are called
on that AST node.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185277 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
5eada844fa70b6e2bc941dd7306f7a4fb1e8529d 22-Feb-2013 Benjamin Kramer <benny.kra@googlemail.com> Streamify getNameForDiagnostic and remove the string versions of PrintTemplateArgumentList.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175894 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
8268fe7c4bdfa341975a687a8a5e236c2c5b88a4 24-Aug-2012 James Dennett <jdennett@google.com> Allow RecursiveASTVisitor to visit CXXCtorInitializer objects for which
isWritten() returns false, if shouldVisitImplicitCode() returns true.
Previously those CXXCtorInitializers were always skipped.

In order to make this change easier to test, this patch also extends the
test class template ExpectedLocationVisitor to support arbitrary numbers
of expected matches and disallowed matches.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162544 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
82b4550fb25ad578b6c8143b87a003fae7106cae 17-Aug-2012 Richard Smith <richard-llvm@metafoo.co.uk> Part of PR13618: visit the TypeLoc when RecursiveASTVisitor visits a CompoundLiteralExpr.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162133 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
0652c35a303a6186142eea566c88714c59bdc664 17-Aug-2012 Richard Smith <richard-llvm@metafoo.co.uk> Don't forget to apply #pragma pack to partial and explicit specializations of
class templates. This fixes misalignment issues in llvm/Support/Endian.h when
built by Clang.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162074 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
bc9e5582467e70ec38b9fc5d3605152e86e2a5f8 25-Jun-2012 Richard Smith <richard-llvm@metafoo.co.uk> Add testing for CommentHandler, and fix a bug where trailing comments in #else
and #endif in non-skipped blocks were not passed to the CommentHandler. Patch
by Andy Gibbs!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159119 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
1071ba9c324d831b437870a1fe63bf2ecdc4e9e4 21-Jun-2012 Daniel Jasper <djasper@google.com> Make the RecursiveASTVisitor visit the body of a range-based for loop
again. This was broken in r158395.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158907 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
52ec0c0357ce970ca52a27c1086626450f0967e7 13-Jun-2012 Daniel Jasper <djasper@google.com> Rename shouldVisitImplicitDeclarations to shouldVisitImplicitCode.
Fix RecursiveASTVisitor to visit CXXForRangeStmts accordingly to visit
implicit or explicit code.

The key bug that inspired this was the Visitor not visiting the range
initializer of such a loop, which is explicit code.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158395 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
c28a335184207a47f34eb9d1707dc8d7c6c7b8b6 05-Jun-2012 Richard Smith <richard-llvm@metafoo.co.uk> RecursiveASTVisitor: add ability to visit implicit declarations. Patch by
James Dennett!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@158002 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
6fada8e820f2fd1b4cd38e48c8986110e87c5915 31-May-2012 Richard Smith <richard-llvm@metafoo.co.uk> Only visit default arguments for template declarations when visiting the template declaration which introduced them. Patch by Yang Chen!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157723 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
e966beaa6ef3eb7ced09203f748e6042f81b2a6c 30-May-2012 Daniel Jasper <djasper@google.com> Test commit - Fix typo in comment.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@157674 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
06cd51a83577019ea26661b7d570ae9aef06f674 10-May-2012 Richard Smith <richard-llvm@metafoo.co.uk> RecursiveASTVisitor:

We don't create any declaration to mark the explicit instantiation of function
templates other than the instantiation itself, so visit that when traversing
the function template decl.

This is a temporary fix, pending the creation of a Decl node to represent the
explicit instantiation.

Patch by Daniel Jasper!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156522 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
c8c222830a1d8df8ed05bedfcac868fe6838fba8 02-May-2012 Richard Smith <richard-llvm@metafoo.co.uk> Unrevert r155951, reverted in r155962, with two changes:
* Work around build failures due to gcc 4.2 bugs.
* Remove BodyIndexer::TraverseCXXOperatorCallExpr, which was not being called
prior to this change, and whose presence disables a RecursiveASTVisitor
stack space optimization after this change.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155969 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
b51c7f3fe619de753146ffd167f1c6b1df8bf443 02-May-2012 Andrew Trick <atrick@apple.com> Revert "Fix RecursiveASTVisitor's data recursion to call the Traverse* functions if they"

FAIL: Clang :: Index/index-many-call-ops.cpp

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155962 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
e3ba2987b9d55fdc976362ddccdb8c5a73d19fc9 01-May-2012 Richard Smith <richard-llvm@metafoo.co.uk> Fix RecursiveASTVisitor's data recursion to call the Traverse* functions if they
have been overridden in the derived class. Also, remove a non-functional
implementation of an incorrect optimization for ParenExprs.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155951 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
e002631101d3bafbc90ed8589ffc615f04dc245b 26-Apr-2012 David Blaikie <dblaikie@gmail.com> Fix file name in comment.

Patch by Yang Chen.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155658 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
a313b2fbba86c901e58dc58df036e731f24fdaee 26-Apr-2012 Richard Smith <richard-llvm@metafoo.co.uk> RecursiveASTVisitor: When in 'shouldVisitTemplateInstantiations' mode, visit
all instantiations of a template when we visit the canonical declaration of the
primary template, rather than trying to match them up to the partial
specialization from which they are instantiated. This fixes a bug where we
failed to visit instantiations of partial specializations of member templates of
class templates, and naturally extends to allow us to visit instantiations where
we have instantiated only a declaration.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155597 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
5482dc3a88fce51307b5e1e19bdf72dea1562040 24-Apr-2012 Richard Smith <richard-llvm@metafoo.co.uk> RecursiveASTVisitor: Visit instantiations of member templates of class
templates. In an implicit instantiation of a member class, any member
templates don't get instantiated, so the existing check which only visited
the instantiations of a defined template skipped these templates'
instantiations.

Since there is only a single declaration of a member template of a class
template specialization, just use that to determine whether to visit the
instantiations. This introduces a slight inconsistency in that we will
visit the instantiations of such templates whether or not they are
defined, but we never visit a declared-but-not-defined instantiation, so
this turns out to not matter.

Patch by Daniel Jasper!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155487 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
9f99d06e0d22380b9d1f0609a083dbfbd8b37c10 23-Apr-2012 Manuel Klimek <klimek@google.com> Fix PR12608. Patch contributed by Yang Chen.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155355 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
dab28942c4ebd04e279535207c366faedea260a6 20-Apr-2012 Manuel Klimek <klimek@google.com> No need to put the SourceManager in with the ASTContext, as the ASTContext
already contains the SourceManager.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155198 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp
fad7f85553da052559077f28c6937a8dd704b28d 19-Apr-2012 Manuel Klimek <klimek@google.com> Adds a unit test for the RecursiveASTVisitor.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@155108 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/unittests/Tooling/RecursiveASTVisitorTest.cpp