[PATCH] D89314: [SyntaxTree] Bug fix in `MutationsImpl::addAfter`.

2020-10-13 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. eduucaldas requested review of this revision. - Add assertions to other `MutationsImpl` member functions - `findPrevious` is a free function Repository: rG LLVM Github Monorepo https://rev

[PATCH] D89146: [SyntaxTree] Fix rtti for `Expression`.

2020-10-13 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 297842. eduucaldas added a comment. rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D89146/new/ https://reviews.llvm.org/D89146 Files: clang/include/clang/Tooling/Syntax/Nodes.h Index: clang/include

[PATCH] D89146: [SyntaxTree] Fix rtti for `Expression`.

2020-10-13 Thread Eduardo Caldas via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGa8f1790fdb8c: [SyntaxTree] Fix rtti for `Expression`. (authored by eduucaldas). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION h

[PATCH] D89303: [SyntaxTree] Improve safety of `replaceChildRangeLowLevel`

2020-10-14 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 298079. eduucaldas marked 2 inline comments as done. eduucaldas added a comment. Answer to comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D89303/new/ https://reviews.llvm.org/D89303 Files: clang/li

[PATCH] D89303: [SyntaxTree] Improve safety of `replaceChildRangeLowLevel`

2020-10-14 Thread Eduardo Caldas via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG4178f8f2f08e: [SyntaxTree] Improve safety of `replaceChildRangeLowLevel` (authored by eduucaldas). Repository: rG LLVM Github Monorepo CHANGES SI

[PATCH] D89314: [SyntaxTree] Bug fix in `MutationsImpl::addAfter`.

2020-10-14 Thread Eduardo Caldas via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG72732acade77: [SyntaxTree] Bug fix in `MutationsImpl::addAfter`. (authored by eduucaldas). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST

[PATCH] D89303: [SyntaxTree] Improve safety of `replaceChildRangeLowLevel`

2020-10-14 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas marked an inline comment as done. eduucaldas added inline comments. Comment at: clang/lib/Tooling/Syntax/Tree.cpp:122 #endif + Node *&Begin = BeforeBegin ? BeforeBegin->NextSibling : FirstChild; + gribozavr2 wrote: > Could you move this definition up

[PATCH] D89148: [SyntaxTree] Artificial use of the Mutations API.

2020-10-14 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 298092. eduucaldas added a comment. Rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D89148/new/ https://reviews.llvm.org/D89148 Files: clang/include/clang/Tooling/Syntax/Mutations.h clang/lib/Toolin

[PATCH] D88106: [SyntaxTree] Provide iterator-like functions for Lists

2020-10-14 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 298156. eduucaldas marked an inline comment as done. eduucaldas added a comment. - Make `ElementAndDelimiterIterator` templated. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D88106/new/ https://reviews.llvm.

[PATCH] D88106: [SyntaxTree] Provide iterator-like functions for Lists

2020-10-14 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added a comment. Haven't yet implemented `BeforeBegin`, waiting for a heads up on the patch as is. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D88106/new/ https://reviews.llvm.org/D88106 ___

[PATCH] D88106: [SyntaxTree] Provide iterator-like functions for Lists

2020-10-14 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added inline comments. Comment at: clang/include/clang/Tooling/Syntax/Tree.h:269 + return EDI == Other.EDI; +} + gribozavr2 wrote: > Please also define `operator!=`. this is defined by the `iterato_facade_base`, take a look at the comments in

[PATCH] D88106: [SyntaxTree] Provide iterator-like functions for Lists

2020-10-14 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added inline comments. Comment at: clang/include/clang/Tooling/Syntax/Tree.h:241-242 /// "a; b; c" <=> [("a" , ";"), ("b" , ";" ), ("c" , null)] + template + class ElementAndDelimiterIterator + : public llvm::iterator_facade_base< Since we'

[PATCH] D88106: [SyntaxTree] Provide iterator-like functions for Lists

2020-10-15 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 298416. eduucaldas added a comment. - [SyntaxTree] `ElementAndDelimiterIterator` is polymorphic and supports `BeforeBegin` iterator Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D88106/new/ https://reviews.l

[PATCH] D88106: [SyntaxTree] Provide iterator-like functions for Lists

2020-10-15 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 298420. eduucaldas added a comment. Linting Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D88106/new/ https://reviews.llvm.org/D88106 Files: clang/include/clang/Tooling/Syntax/Tree.h clang/lib/Tooling/Sy

[PATCH] D88553: [clangd] Start using SyntaxTrees for folding ranges feature

2020-10-20 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added inline comments. Comment at: clang-tools-extra/clangd/SemanticSelection.cpp:49-51 + if (Node->getKind() == syntax::NodeKind::CompoundStatement) { +const auto *Tree = dyn_cast(Node); +assert(Tree); Comment at: clang-to

[PATCH] D88106: [SyntaxTree] Provide iterator-like functions for Lists

2020-10-20 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 299347. eduucaldas marked 2 inline comments as not done. eduucaldas added a comment. Add tests, `ElementAndDelimiter` are input iterators Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D88106/new/ https://revi

[PATCH] D88106: [SyntaxTree] Provide iterator-like functions for Lists

2020-10-20 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 299348. eduucaldas added a comment. rename getBeforeBegin Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D88106/new/ https://reviews.llvm.org/D88106 Files: clang/include/clang/Tooling/Syntax/Tree.h clang/

[PATCH] D89794: [SyntaxTree] Implement "by-pointer output parameter to return value" refactoring.

2020-10-20 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. eduucaldas requested review of this revision. Example of such refactoring: Customer* C; getCustumer(C); Customer C = getCustumer(); Repository: rG LLVM Github Monorepo https://revi

[PATCH] D88553: [clangd] Start using SyntaxTrees for folding ranges feature

2020-10-21 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added inline comments. Comment at: clang-tools-extra/clangd/SemanticSelection.cpp:52-55 +const syntax::Token *FirstToken = Tree->findFirstLeaf()->getToken(), +*LastToken = Tree->findLastLeaf()->getToken(); +assert(FirstToken->kind() == t

[PATCH] D88553: [clangd] Start using SyntaxTrees for folding ranges feature

2020-10-21 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added inline comments. Comment at: clang/include/clang/Tooling/Syntax/Tree.h:172-174 /// Find the first node with a corresponding role. Node *findChild(NodeRole R); + const Node *findChild(NodeRole R) const; I think that makes sense, since all t

[PATCH] D90023: [Syntax] Add iterators over children of syntax trees.

2020-10-23 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added a comment. Thanks Sam! I learned a lot from your patch ^^ Comment at: clang/include/clang/Tooling/Syntax/Tree.h:157-184 + /// Iterator over children (common base for const/non-const). + /// Not invalidated by tree mutations (holds a stable node pointer). + t

[PATCH] D90161: [SyntaxTree] Provide iterators for Lists

2020-10-26 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. eduucaldas requested review of this revision. Provide an iterator for `List` that iterates through elements and delimiters on pairs. This iterator is robust to missing elements. For instance,

[PATCH] D90023: [Syntax] Add iterators over children of syntax trees.

2020-10-26 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas accepted this revision. eduucaldas added a comment. Thanks for the instructive replies Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90023/new/ https://reviews.llvm.org/D90023 ___ cfe-commits

[PATCH] D90161: [SyntaxTree] Provide iterators for Lists

2020-10-26 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas marked an inline comment as done. eduucaldas added a comment. In D90161#2353736 , @gribozavr2 wrote: > Could you add tests that verify the pairing of elements and delimiters? Those are surfaced through the previous tests, via `getElementsAsNod

[PATCH] D90161: [SyntaxTree] Provide iterators for Lists

2020-10-26 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 300696. eduucaldas added a comment. Fix comment. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90161/new/ https://reviews.llvm.org/D90161 Files: clang/include/clang/Tooling/Syntax/Tree.h clang/unittests

[PATCH] D88106: [SyntaxTree] Provide iterator-like functions for Lists

2020-10-26 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas abandoned this revision. eduucaldas added inline comments. Comment at: clang/include/clang/Tooling/Syntax/Tree.h:252 + Kind = IteratorKind::NotSentinel; + if (isElement(Begin)) +Current = getWithDelimiter(cast(Begin)); Sin

[PATCH] D90161: [SyntaxTree] Provide iterators for Lists

2020-10-26 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 300702. eduucaldas added a comment. Diff against master, sorry about that Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90161/new/ https://reviews.llvm.org/D90161 Files: clang/include/clang/Tooling/Syntax

[PATCH] D90240: [SyntaxTree] Add reverse links to syntax Nodes.

2020-10-27 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. eduucaldas requested review of this revision. Rationale: Children of a syntax tree had forward links only, because there was no need for reverse links. This need appeared when we started mutat

[PATCH] D90240: [SyntaxTree] Add reverse links to syntax Nodes.

2020-10-27 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added a reviewer: gribozavr2. eduucaldas added a subscriber: sammccall. eduucaldas added inline comments. Comment at: clang/include/clang/Tooling/Syntax/Tree.h:189 /// EXPECTS: Child->Role != Detached void prependChildLowLevel(Node *Child); friend class TreeBu

[PATCH] D90161: [SyntaxTree] Provide iterators for Lists

2020-10-27 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas marked 8 inline comments as done. eduucaldas added a comment. I left some points unanswered, I'll answer them tomorrow :) Comment at: clang/include/clang/Tooling/Syntax/Tree.h:231 + /// `ElementAndDelimiter` acts as one. + template class ElementAndDelimiterIterato

[PATCH] D90161: [SyntaxTree] Provide iterators for Lists

2020-10-27 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 301024. eduucaldas marked 6 inline comments as done. eduucaldas added a comment. - `const` on `getElement` and similar. - `NotSentinel` -> `Element` Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90161/new/ h

[PATCH] D90240: [SyntaxTree] Add reverse links to syntax Nodes.

2020-10-28 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 301198. eduucaldas marked 3 inline comments as done. eduucaldas added a comment. - `replaceChildRangeLowLevel` now takes Begin instead of BeforeBegin - `appendChildLowLevel` Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://review

[PATCH] D90240: [SyntaxTree] Add reverse links to syntax Nodes.

2020-10-28 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas marked 2 inline comments as done. eduucaldas added inline comments. Comment at: clang/include/clang/Tooling/Syntax/Tree.h:109 Node *getNextSibling() { return NextSibling; } + const Node *getPreviousSibling() const { return PreviousSibling; } + Node *getPreviousSib

[PATCH] D89794: [SyntaxTree] Implement "by-pointer output parameter to return value" refactoring.

2020-10-28 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added a subscriber: gribozavr2. eduucaldas added a comment. This patch will build upon https://reviews.llvm.org/D90240 and https://reviews.llvm.org/D90161 When those patches land, work on this patch will resume. It is here to illustrate the relevance of the previous patches and the ge

[PATCH] D89794: [SyntaxTree] Implement "by-pointer output parameter to return value" refactoring.

2020-10-28 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added a subscriber: sammccall. eduucaldas added a comment. Sam, this patch is outdated, as we're still making decisions on https://reviews.llvm.org/D90161 and we haven't yet landed https://reviews.llvm.org/D90240, please don't bother reviewing it. This is where we started thinking ab

[PATCH] D90240: [SyntaxTree] Add reverse links to syntax Nodes.

2020-10-28 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 301255. eduucaldas added a comment. Rebase to include ChildIterator patch. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90240/new/ https://reviews.llvm.org/D90240 Files: clang/include/clang/Tooling/Synta

[PATCH] D90240: [SyntaxTree] Add reverse links to syntax Nodes.

2020-10-28 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 301256. eduucaldas added a comment. I was silly on the last rebase. Ignore this. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90240/new/ https://reviews.llvm.org/D90240 Files: clang/include/clang/Tooling

[PATCH] D90240: [SyntaxTree] Add reverse links to syntax Nodes.

2020-10-28 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 301315. eduucaldas marked 9 inline comments as done. eduucaldas added a comment. Answered all comments but: - Add tests for `replaceChildRangeLowLevel` - Asymmetry of `replaceChildRangeLowLevel`, do we need to separate children of the replaced range? Re

[PATCH] D90543: [Syntax] Start to move trivial Node class definitions to TableGen. NFC

2020-11-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added a comment. > Compared to Dmitri's prototype, Nodes.td looks more like a class hierarchy and > less like a grammar. (E.g. variants list the Alternatives parent rather than > vice versa). > e.g. we may introduce abstract bases like "loop" that the grammar doesn't > care about in

[PATCH] D90240: [SyntaxTree] Add reverse links to syntax Nodes.

2020-11-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added a comment. As we discussed offline we will probably not provide `replaceChildRange` in the public mutations API anymore. As a result I don't think we should be chaining changes related to `replaceChildRange` in this patch, and thus it should be ready to go. Repository: rG L

[PATCH] D90240: [SyntaxTree] Add reverse links to syntax Nodes.

2020-11-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 302879. eduucaldas added a comment. Rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D90240/new/ https://reviews.llvm.org/D90240 Files: clang/include/clang/Tooling/Syntax/Tree.h clang/lib/Tooling/Syn

[PATCH] D90240: [SyntaxTree] Add reverse links to syntax Nodes.

2020-11-05 Thread Eduardo Caldas via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG23657d9cc332: [SyntaxTree] Add reverse links to syntax Nodes. (authored by eduucaldas). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST AC

[PATCH] D82157: Fix crash on `user defined literals`

2020-07-10 Thread Eduardo Caldas via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGf33c2c27a8d4: Fix crash on `user defined literals` (authored by eduucaldas). Changed prior to commit: https://reviews.llvm.org/D82157?vs=277060&id=277071#toc Repository: rG LLVM Github Monorepo CHAN

[PATCH] D84348: WIP: Add complete id-expression support to syntax trees

2020-07-22 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D84348 Files: clang/include/clang/Tooling/Syntax/Nodes.h clang/lib/Tooling/Syntax/BuildTree.cpp clang/lib/Tooling/Syntax/N

[PATCH] D84348: WIP: Add complete id-expression support to syntax trees

2020-07-22 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added a reviewer: gribozavr2. eduucaldas marked 6 inline comments as done. eduucaldas added inline comments. Comment at: clang/include/clang/Tooling/Syntax/Nodes.h:101-106 + UnknownNameSpecifier, + GlobalNameSpecifier, + NamespaceNameSpecifier, + TypeNameSpecifier,

[PATCH] D84348: WIP: Add complete id-expression support to syntax trees

2020-07-23 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 280216. eduucaldas added a comment. Update API to new nested-name-specifier grammar rule Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D84348/new/ https://reviews.llvm.org/D84348 Files: clang/include/clang

[PATCH] D84348: WIP: Add complete id-expression support to syntax trees

2020-07-24 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 280497. eduucaldas added a comment. - Improve getLocalSourceRange - nested-name-specifier is now a ::-separated list of name-specifiers Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D84348/new/ https://review

[PATCH] D84348: WIP: Add complete id-expression support to syntax trees

2020-07-24 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 280511. eduucaldas added a comment. - Remove UnknownNameSpecifier, answer to comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D84348/new/ https://reviews.llvm.org/D84348 Files: clang/include/clang/To

[PATCH] D84348: WIP: Add complete id-expression support to syntax trees

2020-07-27 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 280899. eduucaldas marked 9 inline comments as done. eduucaldas added a comment. - Answer code review - Simpler logic for `getUnqualifiedIdSourceRange` and inline it - Remove ambiguously named variable NNS Repository: rG LLVM Github Monorepo CHANGES SI

[PATCH] D84348: WIP: Add complete id-expression support to syntax trees

2020-07-27 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas marked 2 inline comments as done. eduucaldas added inline comments. Comment at: clang/lib/Tooling/Syntax/BuildTree.cpp:834 + // FIXME: I feel like this could be upstreamed. + SourceRange getUnqualifiedIdSourceRange(DeclRefExpr *S) { +if (S->hasExplicitTemplateArg

[PATCH] D80540: Add support for binary operators in Syntax Trees

2020-05-26 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. eduucaldas added a reviewer: gribozavr2. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D80540 Files: clang/include/clang/Tooling/Syntax/Nodes.h clang/lib/Tooling/Syntax/B

[PATCH] D80624: Add support for UnaryOperator in SyntaxTree

2020-05-27 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. eduucaldas added a reviewer: gribozavr2. gribozavr2 accepted this revision. This revision is now accepted and ready to land. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D806

[PATCH] D80731: Improve test infrastructure in SyntaxTree

2020-05-28 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. eduucaldas added a reviewer: gribozavr2. - Test if the code sourcing the SyntaxTree compiles - Output compiler errors and warnings to err - Fix tests with code that did not compile Repository

[PATCH] D80812: Add support for Overloaded Binary Operators in SyntaxTree

2020-05-29 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. eduucaldas added a reviewer: gribozavr2. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D80812 Files: clang/lib/Tooling/Syntax/BuildTree.cpp clang/unittests/Tooling/Syntax

[PATCH] D80822: Run syntax tree tests in many language modes

2020-06-02 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added inline comments. Comment at: clang/unittests/Tooling/Syntax/TreeTest.cpp:54-63 + bool isCXX() const { +return Language == Lang_CXX || Language == Lang_CXX11 || + Language == Lang_CXX14 || Language == Lang_CXX17 || + Language == Lang_CXX2a

[PATCH] D81019: Syntax tree: ignore implicit expressions at the top level of statements

2020-06-03 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas accepted this revision. eduucaldas added inline comments. Comment at: clang/lib/Tooling/Syntax/BuildTree.cpp:1048 + syntax::Tree *ChildNode; + if (Expr *ChildExpr = dyn_cast(Child)) { +// This is an expression in a statement position, consume the trailing ---

[PATCH] D81092: Add support for `nullptr` in SyntaxTrees

2020-06-03 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. eduucaldas added a reviewer: gribozavr2. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D81092 Files: clang/include/clang/Tooling/Syntax/Nodes.h clang/lib/Tooling/Syntax/B

[PATCH] D81135: Add support for IntegerLiteral in SyntaxTree

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D81135 Files: clang/include/clang/Tooling/Syntax/Nodes.h clang/lib/Tooling/Syntax/BuildTree.cpp clang/lib/Tooling/Syntax/N

[PATCH] D81135: Add support for IntegerLiteral in SyntaxTree

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 268382. eduucaldas added a comment. Add support for IntegerLiteral in SyntaxTree Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81135/new/ https://reviews.llvm.org/D81135 Files: clang/include/clang/Tooling

[PATCH] D81136: Define rules for naming NodeRole and apply them.

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D81136 Files: clang/include/clang/Tooling/Syntax/Nodes.h clang/lib/Tooling/Syntax/BuildTree.cpp clang/lib/Tooling/Syntax/N

[PATCH] D81135: Add support for IntegerLiteral in SyntaxTree

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 268397. eduucaldas added a comment. answer comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81135/new/ https://reviews.llvm.org/D81135 Files: clang/include/clang/Tooling/Syntax/Nodes.h clang/lib/T

[PATCH] D81135: Add support for IntegerLiteral in SyntaxTree

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 268403. eduucaldas added a comment. fix Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81135/new/ https://reviews.llvm.org/D81135 Files: clang/include/clang/Tooling/Syntax/Nodes.h clang/lib/Tooling/Synta

[PATCH] D81135: Add support for IntegerLiteral in SyntaxTree

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 268420. eduucaldas added a comment. answering comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81135/new/ https://reviews.llvm.org/D81135 Files: clang/include/clang/Tooling/Syntax/Nodes.h clang/li

[PATCH] D81135: Add support for IntegerLiteral in SyntaxTree

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 268428. eduucaldas marked 4 inline comments as done. eduucaldas added a comment. Fix nits Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81135/new/ https://reviews.llvm.org/D81135 Files: clang/include/clan

[PATCH] D81155: Rename arrow -> arrowToken for unified naming

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. eduucaldas added a reviewer: gribozavr2. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D81155 Files: clang/include/clang/Tooling/Syntax/Nodes.h clang/lib/Tooling/Syntax/N

[PATCH] D81157: Propose naming principle for NodeRole and apply it

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D81157 Files: clang/include/clang/Tooling/Syntax/Nodes.h clang/lib/Tooling/Syntax/BuildTree.cpp clang/lib/Tooling/Syntax/N

[PATCH] D81168: Add support for id-expression in SyntaxTree

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. eduucaldas added a subscriber: gribozavr2. eduucaldas marked an inline comment as done. eduucaldas added inline comments. eduucaldas marked an inline comment as not done. Comm

[PATCH] D81168: Add support for id-expression in SyntaxTree

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added a subscriber: gribozavr2. eduucaldas marked an inline comment as done. eduucaldas added inline comments. Comment at: clang/unittests/Tooling/Syntax/TreeTest.cpp:829 +| | | | | `-:: +| | | | `-TypeSpecifier +| | | | |-S Perhaps we sh

[PATCH] D81168: Add support for id-expression in SyntaxTree

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 268503. eduucaldas marked an inline comment as done. eduucaldas added a comment. . Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81168/new/ https://reviews.llvm.org/D81168 Files: clang/unittests/Tooling/S

[PATCH] D81157: Propose naming principle for NodeRole and apply it

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added inline comments. Comment at: clang/include/clang/Tooling/Syntax/Nodes.h:94 /// a binary expression'. Used for implementing accessors. +// How to name NodeRole: +// If the child node is a token/keyword, end its name with 'Token'/'Keyword' griboza

[PATCH] D81168: Add support for id-expression in SyntaxTree

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas added inline comments. Comment at: clang/unittests/Tooling/Syntax/TreeTest.cpp:829 +| | | | | `-:: +| | | | `-TypeSpecifier +| | | | |-S eduucaldas wrote: > Perhaps we shouldn't differ between specifiers as that is semantical > informati

[PATCH] D81157: Propose naming principle for NodeRole and apply it

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 268502. eduucaldas marked 2 inline comments as done. eduucaldas added a comment. Fix cout, add explanation Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81157/new/ https://reviews.llvm.org/D81157 Files: c

[PATCH] D81157: Propose naming principle for NodeRole and apply it

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 268519. eduucaldas added a comment. fixed Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81157/new/ https://reviews.llvm.org/D81157 Files: clang/include/clang/Tooling/Syntax/Nodes.h clang/lib/Tooling/Syn

[PATCH] D81157: Propose naming principle for NodeRole and apply it

2020-06-04 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 268517. eduucaldas added a comment. `ArrowToken`, `ExternKeyword` Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81157/new/ https://reviews.llvm.org/D81157 Files: clang/include/clang/Tooling/Syntax/Nodes.h

[PATCH] D81280: (Incomplete)Add support for id-expression

2020-06-05 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. - TODO: Differ between NameQualifiers - TODO: Box all operators - Done: Treat NestedNameSpecifiers - Done: [Try] Unbox all operators Repository: rG LLVM Github Monorepo https://reviews.llv

[PATCH] D81280: (Incomplete)Add support for id-expression

2020-06-08 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 269127. eduucaldas added a comment. Add support for DeclRefExpr in SyntaxTree, by generating IdExpression Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81280/new/ https://reviews.llvm.org/D81280 Files: cl

[PATCH] D81168: Add support for DeclRefExpr in SyntaxTree, by generating IdExpressions

2020-06-08 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 269129. eduucaldas added a comment. cleanup for upstreaming Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81168/new/ https://reviews.llvm.org/D81168 Files: clang/include/clang/Tooling/Syntax/Nodes.h cla

[PATCH] D81168: Add support for DeclRefExpr in SyntaxTree, by generating IdExpressions

2020-06-09 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas marked 6 inline comments as done. eduucaldas added inline comments. Comment at: clang/lib/Tooling/Syntax/BuildTree.cpp:618 + Builder.foldNode(Builder.getRange(it.getLocalSourceRange()), NS, nullptr); + Builder.markChild(NS, syntax::NodeRole::Unknown); +}

[PATCH] D81168: Add support for DeclRefExpr in SyntaxTree, by generating IdExpressions

2020-06-09 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 269422. eduucaldas edited the summary of this revision. eduucaldas added a comment. Answering simple comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81168/new/ https://reviews.llvm.org/D81168 Files:

[PATCH] D81168: Add support for DeclRefExpr in SyntaxTree, by generating IdExpressions

2020-06-09 Thread Eduardo Caldas via Phabricator via cfe-commits
eduucaldas updated this revision to Diff 269423. eduucaldas added a comment. nswering simple comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81168/new/ https://reviews.llvm.org/D81168 Files: clang/include/clang/Tooling/Syntax/Nodes.h cl

<    1   2   3   4   5