@@ -99,9 +99,9 @@ extension Parser {
99
99
}
100
100
101
101
extension Parser {
102
- mutating func parseModifierDetail( _ keyword : Keyword ) -> RawDeclModifierDetailSyntax {
102
+ mutating func parseModifierDetail( ) -> RawDeclModifierDetailSyntax {
103
103
let ( unexpectedBeforeLeftParen, leftParen) = self . expect ( . leftParen)
104
- let ( unexpectedBeforeDetailToken, detailToken) = self . expect ( . identifier, TokenSpec ( keyword , remapping: . identifier) , default: . identifier)
104
+ let ( unexpectedBeforeDetailToken, detailToken) = self . expect ( . identifier, TokenSpec ( . set , remapping: . identifier) , default: . identifier)
105
105
let ( unexpectedBeforeRightParen, rightParen) = self . expect ( . rightParen)
106
106
return RawDeclModifierDetailSyntax (
107
107
unexpectedBeforeLeftParen,
@@ -119,7 +119,7 @@ extension Parser {
119
119
120
120
let detail : RawDeclModifierDetailSyntax ?
121
121
if self . at ( . leftParen) {
122
- detail = self . parseModifierDetail ( . set )
122
+ detail = self . parseModifierDetail ( )
123
123
} else {
124
124
detail = nil
125
125
}
@@ -224,7 +224,18 @@ extension Parser {
224
224
225
225
let detail : RawDeclModifierDetailSyntax ?
226
226
if self . at ( . leftParen) {
227
- detail = self . parseModifierDetail ( . unsafe)
227
+ let ( unexpectedBeforeLeftParen, leftParen) = self . expect ( . leftParen)
228
+ let ( unexpectedBeforeDetailToken, detailToken) = self . expect ( TokenSpec ( . unsafe, remapping: . identifier) )
229
+ let ( unexpectedBeforeRightParen, rightParen) = self . expect ( . rightParen)
230
+ detail = RawDeclModifierDetailSyntax (
231
+ unexpectedBeforeLeftParen,
232
+ leftParen: leftParen,
233
+ unexpectedBeforeDetailToken,
234
+ detail: detailToken,
235
+ unexpectedBeforeRightParen,
236
+ rightParen: rightParen,
237
+ arena: self . arena
238
+ )
228
239
} else {
229
240
detail = nil
230
241
}
0 commit comments