diff options
Diffstat (limited to 'clang/lib/Sema/SemaExpr.cpp')
-rw-r--r-- | clang/lib/Sema/SemaExpr.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/Sema/SemaExpr.cpp b/clang/lib/Sema/SemaExpr.cpp index 62a41f5b78e..7152f04b887 100644 --- a/clang/lib/Sema/SemaExpr.cpp +++ b/clang/lib/Sema/SemaExpr.cpp @@ -1757,11 +1757,12 @@ Sema::BuildDeclarationNameExpr(const CXXScopeSpec &SS, SourceLocation()); OwningExprResult Res = PerformCopyInitialization( - InitializedEntity::InitializeResult(SourceLocation(), - T, false), + InitializedEntity::InitializeBlock(VD->getLocation(), + T, false), SourceLocation(), Owned(E)); if (!Res.isInvalid()) { + Res = MaybeCreateCXXExprWithTemporaries(move(Res)); Expr *Init = Res.takeAs<Expr>(); if (isa<CXXConstructExpr>(Init)) BDRE->setCopyConstructorExpr(Init); |