aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Tooling/Transformer/SourceCodeBuilders.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/lib/Tooling/Transformer/SourceCodeBuilders.cpp')
-rw-r--r--clang/lib/Tooling/Transformer/SourceCodeBuilders.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/clang/lib/Tooling/Transformer/SourceCodeBuilders.cpp b/clang/lib/Tooling/Transformer/SourceCodeBuilders.cpp
index 56ec45e8fd1d..a1c99b60216b 100644
--- a/clang/lib/Tooling/Transformer/SourceCodeBuilders.cpp
+++ b/clang/lib/Tooling/Transformer/SourceCodeBuilders.cpp
@@ -93,6 +93,8 @@ tooling::buildDereference(const Expr &E, const ASTContext &Context) {
llvm::Optional<std::string> tooling::buildAddressOf(const Expr &E,
const ASTContext &Context) {
+ if (E.isImplicitCXXThis())
+ return std::string("this");
if (const auto *Op = dyn_cast<UnaryOperator>(&E))
if (Op->getOpcode() == UO_Deref) {
// Strip leading '*'.