diff --git a/include/swift/Parse/SyntaxParsingContext.h b/include/swift/Parse/SyntaxParsingContext.h index 2db8e6e9058c1..6df76bebca037 100644 --- a/include/swift/Parse/SyntaxParsingContext.h +++ b/include/swift/Parse/SyntaxParsingContext.h @@ -300,7 +300,7 @@ class alignas(1 << SyntaxAlignInBits) SyntaxParsingContext { return SyntaxNode(std::move(rawNode)); } - ParsedTokenSyntax &&popToken(); + ParsedTokenSyntax popToken(); /// Create a node using the tail of the collected parts. The number of parts /// is automatically determined from \c Kind. Node: limited number of \c Kind diff --git a/lib/Parse/SyntaxParsingContext.cpp b/lib/Parse/SyntaxParsingContext.cpp index 65cf131b10373..6cd6b507bf863 100644 --- a/lib/Parse/SyntaxParsingContext.cpp +++ b/lib/Parse/SyntaxParsingContext.cpp @@ -163,8 +163,9 @@ const SyntaxParsingContext *SyntaxParsingContext::getRoot() const { return Curr; } -ParsedTokenSyntax &&SyntaxParsingContext::popToken() { - return std::move(popIf().getValue()); +ParsedTokenSyntax SyntaxParsingContext::popToken() { + auto tok = popIf(); + return std::move(tok.getValue()); } /// Add Token with Trivia to the parts.