diff options
Diffstat (limited to 'lib/Sema/SemaOverload.cpp')
-rw-r--r-- | lib/Sema/SemaOverload.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/lib/Sema/SemaOverload.cpp b/lib/Sema/SemaOverload.cpp index 8b5a72de36..d932f21f79 100644 --- a/lib/Sema/SemaOverload.cpp +++ b/lib/Sema/SemaOverload.cpp @@ -5001,14 +5001,15 @@ Sema::OwningExprResult Sema::CreateOverloadedUnaryOp(SourceLocation OpLoc, return ExprError(); } else { // Convert the arguments. - input = PerformCopyInitialization( - InitializedEntity::InitializeParameter( + OwningExprResult InputInit + = PerformCopyInitialization(InitializedEntity::InitializeParameter( FnDecl->getParamDecl(0)), - SourceLocation(), - move(input)); - if (input.isInvalid()) + SourceLocation(), + move(input)); + if (InputInit.isInvalid()) return ExprError(); + input = move(InputInit); Input = (Expr *)input.get(); } |