10
10
//
11
11
//===----------------------------------------------------------------------===//
12
12
13
+ @_spi ( ExperimentalLanguageFeatures)
14
+ import SwiftParser
13
15
import SwiftSyntax
14
16
import XCTest
15
17
@@ -120,25 +122,22 @@ final class ValueGenericsTests: ParserTestCase {
120
122
] ,
121
123
fixedSource: """
122
124
let x: <#type#> = 123
123
- """
125
+ """ ,
126
+ experimentalFeatures: . valueGenerics
124
127
)
125
128
126
129
assertParse (
127
130
"""
128
131
let x: Generic<123>
129
- """
132
+ """ ,
133
+ experimentalFeatures: . valueGenerics
130
134
)
131
135
132
- // FIXME?: We can't parse this either in the old parser or the swift-syntax one.
133
136
assertParse (
134
137
"""
135
- let x: Generic1️⃣<-123 >
138
+ let x: Generic<-321 >
136
139
""" ,
137
- diagnostics: [
138
- DiagnosticSpec (
139
- message: " extraneous code '<-123>' at top level "
140
- )
141
- ]
140
+ experimentalFeatures: . valueGenerics
142
141
)
143
142
144
143
assertParse (
@@ -153,31 +152,36 @@ final class ValueGenericsTests: ParserTestCase {
153
152
] ,
154
153
fixedSource: """
155
154
typealias One = <#type#>1
156
- """
155
+ """ ,
156
+ experimentalFeatures: . valueGenerics
157
157
)
158
158
159
159
assertParse (
160
160
"""
161
161
extension Vector where N == 123 {}
162
- """
162
+ """ ,
163
+ experimentalFeatures: . valueGenerics
163
164
)
164
165
165
166
assertParse (
166
167
"""
167
168
extension Vector where 123 == N {}
168
- """
169
+ """ ,
170
+ experimentalFeatures: . valueGenerics
169
171
)
170
172
171
173
assertParse (
172
174
"""
173
175
extension Vector where N == -123 {}
174
- """
176
+ """ ,
177
+ experimentalFeatures: . valueGenerics
175
178
)
176
179
177
180
assertParse (
178
181
"""
179
182
extension Vector where -123 == N {}
180
- """
183
+ """ ,
184
+ experimentalFeatures: . valueGenerics
181
185
)
182
186
183
187
assertParse (
@@ -195,7 +199,8 @@ final class ValueGenericsTests: ParserTestCase {
195
199
] ,
196
200
fixedSource: """
197
201
extension Vector where N: <#type#> 123 {}
198
- """
202
+ """ ,
203
+ experimentalFeatures: . valueGenerics
199
204
)
200
205
201
206
assertParse (
@@ -213,7 +218,8 @@ final class ValueGenericsTests: ParserTestCase {
213
218
] ,
214
219
fixedSource: """
215
220
extension Vector where N: <#type#> -123 {}
216
- """
221
+ """ ,
222
+ experimentalFeatures: . valueGenerics
217
223
)
218
224
219
225
// FIXME: Not the best diagnostic
@@ -228,7 +234,8 @@ final class ValueGenericsTests: ParserTestCase {
228
234
DiagnosticSpec (
229
235
message: " unexpected code ': N' in extension "
230
236
) ,
231
- ]
237
+ ] ,
238
+ experimentalFeatures: . valueGenerics
232
239
)
233
240
234
241
assertParse (
@@ -242,7 +249,17 @@ final class ValueGenericsTests: ParserTestCase {
242
249
DiagnosticSpec (
243
250
message: " unexpected code ': N' in extension "
244
251
) ,
245
- ]
252
+ ] ,
253
+ experimentalFeatures: . valueGenerics
254
+ )
255
+ }
256
+
257
+ func testNegativeInteger( ) {
258
+ assertParse (
259
+ """
260
+ let x: Generic<-321>
261
+ """ ,
262
+ experimentalFeatures: . valueGenerics
246
263
)
247
264
}
248
265
}
0 commit comments