aboutsummaryrefslogtreecommitdiff
path: root/lib/Sema/TreeTransform.h
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2011-10-25 00:41:24 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2011-10-25 00:41:24 +0000
commit97f9fe06e7acd55d7d9075a41e33f54855c75eae (patch)
tree677c0479dbc6b7d4a6950bf1b410a5ca62ad0c37 /lib/Sema/TreeTransform.h
parentf226ff9fe8c8db6c5b74a61ce649eda1491c3502 (diff)
Don't forget the lvalue-to-rvalue conversion on the LHS of an -> when rebuilding
it during template instantiation, for a known RHS decl. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@142890 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/TreeTransform.h')
-rw-r--r--lib/Sema/TreeTransform.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/Sema/TreeTransform.h b/lib/Sema/TreeTransform.h
index 03a1d78aa0..b4073eb650 100644
--- a/lib/Sema/TreeTransform.h
+++ b/lib/Sema/TreeTransform.h
@@ -1485,6 +1485,11 @@ public:
ExprResult BaseResult = getSema().DefaultFunctionArrayConversion(Base);
if (BaseResult.isInvalid())
return ExprError();
+ if (isArrow) {
+ BaseResult = getSema().DefaultLvalueConversion(BaseResult.get());
+ if (BaseResult.isInvalid())
+ return ExprError();
+ }
Base = BaseResult.take();
QualType BaseType = Base->getType();