diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2014-08-21 20:51:13 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2014-08-21 20:51:13 +0000 |
commit | 16169e7c0fec3bc715ce59d1612c619f2516e857 (patch) | |
tree | 272d39bcff15b8c83e0eba47f195ad5f7b2a1c3e /lib/Sema/TreeTransform.h | |
parent | 10c57ceeed0b2488a24473f1ae7649033dd6eb39 (diff) |
Return statements are initialization; don't forget to revert the initializer to
its syntactic form before re-analyzing it during template instantiation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@216224 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/TreeTransform.h')
-rw-r--r-- | lib/Sema/TreeTransform.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/Sema/TreeTransform.h b/lib/Sema/TreeTransform.h index a0524bd228..4ba7bdf3da 100644 --- a/lib/Sema/TreeTransform.h +++ b/lib/Sema/TreeTransform.h @@ -5821,7 +5821,8 @@ TreeTransform<Derived>::TransformBreakStmt(BreakStmt *S) { template<typename Derived> StmtResult TreeTransform<Derived>::TransformReturnStmt(ReturnStmt *S) { - ExprResult Result = getDerived().TransformExpr(S->getRetValue()); + ExprResult Result = getDerived().TransformInitializer(S->getRetValue(), + /*NotCopyInit*/false); if (Result.isInvalid()) return StmtError(); |