diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2011-10-25 00:41:24 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2011-10-25 00:41:24 +0000 |
commit | 97f9fe06e7acd55d7d9075a41e33f54855c75eae (patch) | |
tree | 677c0479dbc6b7d4a6950bf1b410a5ca62ad0c37 /lib/Sema/TreeTransform.h | |
parent | f226ff9fe8c8db6c5b74a61ce649eda1491c3502 (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.h | 5 |
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(); |