Skip to content

Commit f015485

Browse files
authored
Merge pull request #3019 from hamishknight/and-then
Check `thenStatements` feature in `CanBeStatementStart`
2 parents a109307 + 252539f commit f015485

File tree

2 files changed

+5
-5
lines changed

2 files changed

+5
-5
lines changed

Diff for: Sources/SwiftParser/Statements.swift

+4-4
Original file line numberDiff line numberDiff line change
@@ -126,9 +126,9 @@ extension Parser {
126126
return label(self.parseDeferStatement(deferHandle: handle), with: optLabel)
127127
case (.yield, let handle)?:
128128
return label(self.parseYieldStatement(yieldHandle: handle), with: optLabel)
129-
case (.then, let handle)? where experimentalFeatures.contains(.thenStatements):
129+
case (.then, let handle)?:
130130
return label(self.parseThenStatement(handle: handle), with: optLabel)
131-
case nil, (.then, _)?:
131+
case nil:
132132
return label(RawMissingStmtSyntax(arena: self.arena), with: optLabel)
133133
}
134134
}
@@ -986,10 +986,10 @@ extension Parser.Lookahead {
986986
return false
987987
}
988988

989-
case .then where experimentalFeatures.contains(.thenStatements):
989+
case .then:
990990
return atStartOfThenStatement(preferExpr: preferExpr)
991991

992-
case nil, .then:
992+
case nil:
993993
return false
994994
}
995995
}

Diff for: Sources/SwiftParser/TokenSpecSet.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ enum CanBeStatementStart: TokenSpecSet {
121121
case TokenSpec(.repeat): self = .repeat
122122
case TokenSpec(.return): self = .return
123123
case TokenSpec(.switch): self = .switch
124-
case TokenSpec(.then): self = .then
124+
case TokenSpec(.then) where experimentalFeatures.contains(.thenStatements): self = .then
125125
case TokenSpec(.throw): self = .throw
126126
case TokenSpec(.while): self = .while
127127
case TokenSpec(.yield): self = .yield

0 commit comments

Comments
 (0)