aboutsummaryrefslogtreecommitdiff
path: root/clang/unittests/Tooling/Syntax/TreeTest.cpp
diff options
context:
space:
mode:
authorEduardo Caldas <ecaldas@google.com>2020-08-11 16:28:00 +0000
committerEduardo Caldas <ecaldas@google.com>2020-08-12 08:01:18 +0000
commitac37afa650271d8366b706d79ff8e217fc624cbb (patch)
tree6848e400e41e103513e6d9ad3dccaa80cfe4fd86 /clang/unittests/Tooling/Syntax/TreeTest.cpp
parent88bbd30736561190a6733d0ad60aec21446b914c (diff)
downloadllvm-ac37afa650271d8366b706d79ff8e217fc624cbb.zip
llvm-ac37afa650271d8366b706d79ff8e217fc624cbb.tar.gz
llvm-ac37afa650271d8366b706d79ff8e217fc624cbb.tar.bz2
[SyntaxTree] Unbox operators into tokens for nodes generated from `CXXOperatorCallExpr`
For an user define `<`, `x < y` would yield the syntax tree: ``` BinaryOperatorExpression |-IdExpression | `-UnqualifiedId | `-x |-IdExpression | `-UnqualifiedId | `-< `-IdExpression `-UnqualifiedId `-y ``` But there is no syntatic difference at call site between call site or built-in `<`. As such they should generate the same syntax tree, namely: ``` BinaryOperatorExpression |-IdExpression | `-UnqualifiedId | `-x |-< `-IdExpression `-UnqualifiedId `-y ``` Differential Revision: https://reviews.llvm.org/D85750
Diffstat (limited to 'clang/unittests/Tooling/Syntax/TreeTest.cpp')
-rw-r--r--clang/unittests/Tooling/Syntax/TreeTest.cpp36
1 files changed, 9 insertions, 27 deletions
diff --git a/clang/unittests/Tooling/Syntax/TreeTest.cpp b/clang/unittests/Tooling/Syntax/TreeTest.cpp
index 4610166..a5d1a4b 100644
--- a/clang/unittests/Tooling/Syntax/TreeTest.cpp
+++ b/clang/unittests/Tooling/Syntax/TreeTest.cpp
@@ -2592,9 +2592,7 @@ void test(X x, X y, X* xp, int X::* pmi) {
| | |-IdExpression
| | | `-UnqualifiedId
| | | `-x
- | | |-IdExpression
- | | | `-UnqualifiedId
- | | | `-=
+ | | |-=
| | `-IdExpression
| | `-UnqualifiedId
| | `-y
@@ -2605,9 +2603,7 @@ void test(X x, X y, X* xp, int X::* pmi) {
| | | `-IdExpression
| | | `-UnqualifiedId
| | | `-x
- | | |-IdExpression
- | | | `-UnqualifiedId
- | | | `-+
+ | | |-+
| | `-IdExpression
| | `-UnqualifiedId
| | `-y
@@ -2617,9 +2613,7 @@ void test(X x, X y, X* xp, int X::* pmi) {
| | |-IdExpression
| | | `-UnqualifiedId
| | | `-x
- | | |-IdExpression
- | | | `-UnqualifiedId
- | | | `-<
+ | | |-<
| | `-IdExpression
| | `-UnqualifiedId
| | `-y
@@ -2629,9 +2623,7 @@ void test(X x, X y, X* xp, int X::* pmi) {
| | |-IdExpression
| | | `-UnqualifiedId
| | | `-x
- | | |-IdExpression
- | | | `-UnqualifiedId
- | | | `-<<
+ | | |-<<
| | `-IdExpression
| | `-UnqualifiedId
| | `-y
@@ -2641,9 +2633,7 @@ void test(X x, X y, X* xp, int X::* pmi) {
| | |-IdExpression
| | | `-UnqualifiedId
| | | `-x
- | | |-IdExpression
- | | | `-UnqualifiedId
- | | | `-,
+ | | |-,
| | `-IdExpression
| | `-UnqualifiedId
| | `-y
@@ -2730,27 +2720,21 @@ void test(X x) {
|-{
|-ExpressionStatement
| |-PrefixUnaryOperatorExpression
- | | |-IdExpression
- | | | `-UnqualifiedId
- | | | `-++
+ | | |-++
| | `-IdExpression
| | `-UnqualifiedId
| | `-x
| `-;
|-ExpressionStatement
| |-PrefixUnaryOperatorExpression
- | | |-IdExpression
- | | | `-UnqualifiedId
- | | | `-!
+ | | |-!
| | `-IdExpression
| | `-UnqualifiedId
| | `-x
| `-;
|-ExpressionStatement
| |-PrefixUnaryOperatorExpression
- | | |-IdExpression
- | | | `-UnqualifiedId
- | | | `-&
+ | | |-&
| | `-IdExpression
| | `-UnqualifiedId
| | `-x
@@ -2809,9 +2793,7 @@ void test(X x) {
| | |-IdExpression
| | | `-UnqualifiedId
| | | `-x
- | | `-IdExpression
- | | `-UnqualifiedId
- | | `-++
+ | | `-++
| `-;
`-}
)txt"));