Skip to content

Commit 44f6968

Browse files
authored
Merge pull request #2418 from DougGregor/effect-specifier-lookahead-fix
Fix lookahead for effects specifiers in function types
2 parents 7131e3b + e5985e1 commit 44f6968

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

Sources/SwiftParser/Types.swift

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -815,7 +815,6 @@ extension Parser.Lookahead {
815815
if peek(isAtAnyIn: EffectSpecifier.self) != nil {
816816
var backtrack = self.lookahead()
817817
backtrack.consumeAnyToken()
818-
backtrack.consumeAnyToken()
819818
return backtrack.atFunctionTypeArrow()
820819
}
821820

Tests/SwiftParserTest/DeclarationTests.swift

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1048,6 +1048,15 @@ final class DeclarationTests: ParserTestCase {
10481048
],
10491049
fixedSource: "func test() async throws(MyError){}"
10501050
)
1051+
1052+
assertParse(
1053+
"""
1054+
struct S<Element, Failure: Error> {
1055+
init(produce: @escaping () async throws(Failure) -> Element?) {
1056+
}
1057+
}
1058+
"""
1059+
)
10511060
}
10521061

10531062
func testExtraneousRightBraceRecovery() {

0 commit comments

Comments
 (0)