@@ -531,8 +531,7 @@ ParserResult<Expr> Parser::parseExprUnary(Diag<> Message, bool isExprBasic) {
531531 tryLexRegexLiteral (/* forUnappliedOperator*/ false );
532532
533533 // 'repeat' as an expression prefix is a pack expansion expression.
534- if (Context.LangOpts .hasFeature (Feature::VariadicGenerics) &&
535- Tok.is (tok::kw_repeat)) {
534+ if (Tok.is (tok::kw_repeat)) {
536535 SourceLoc repeatLoc = consumeToken ();
537536 auto patternExpr = parseExpr (Message);
538537 if (patternExpr.isNull ())
@@ -3024,17 +3023,10 @@ ParserResult<Expr> Parser::parseTupleOrParenExpr(tok leftTok, tok rightTok) {
30243023 rightLoc);
30253024
30263025 // A tuple with a single, unlabeled element is just parentheses.
3027- if (Context.LangOpts .hasFeature (Feature::VariadicGenerics)) {
3028- if (elts.size () == 1 && !isa<PackExpansionExpr>(elts[0 ].E ) &&
3029- elts[0 ].LabelLoc .isInvalid ()) {
3030- return makeParserResult (
3031- status, new (Context) ParenExpr (leftLoc, elts[0 ].E , rightLoc));
3032- }
3033- } else {
3034- if (elts.size () == 1 && elts[0 ].Label .empty ()) {
3035- return makeParserResult (
3036- status, new (Context) ParenExpr (leftLoc, elts[0 ].E , rightLoc));
3037- }
3026+ if (elts.size () == 1 && !isa<PackExpansionExpr>(elts[0 ].E ) &&
3027+ elts[0 ].Label .empty ()) {
3028+ return makeParserResult (
3029+ status, new (Context) ParenExpr (leftLoc, elts[0 ].E , rightLoc));
30383030 }
30393031
30403032 SmallVector<Expr *, 8 > exprs;
0 commit comments