Skip to content

Commit 8220838

Browse files
authored
Merge pull request #80678 from slavapestov/visionos-stdlib
CompatibilitySpan: Fix stdlib build on visionOS
2 parents 5d94a32 + 758284a commit 8220838

File tree

6 files changed

+63
-57
lines changed

6 files changed

+63
-57
lines changed

Runtimes/Core/cmake/modules/AvailabilityMacros.cmake

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1-
file(STRINGS "${SwiftCore_SWIFTC_SOURCE_DIR}/utils/availability-macros.def" availability_defs)
1+
configure_file("${SwiftCore_SWIFTC_SOURCE_DIR}/utils/availability-macros.def"
2+
"${CMAKE_CURRENT_BINARY_DIR}/availability-macros.def"
3+
COPYONLY)
4+
file(STRINGS "${CMAKE_CURRENT_BINARY_DIR}/availability-macros.def" availability_defs)
25
list(FILTER availability_defs EXCLUDE REGEX "^\\s*(#.*)?$")
36
foreach(def ${availability_defs})
47
add_compile_options("$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xfrontend -define-availability -Xfrontend \"${def}\">")

stdlib/public/core/Span/MutableRawSpan.swift

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import Swift
1818
// contains initialized `Element` instances.
1919
@safe
2020
@frozen
21-
@available(SwiftStdlib 5.0, *)
21+
@available(SwiftCompatibilitySpan 5.0, *)
2222
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
2323
public struct MutableRawSpan: ~Copyable & ~Escapable {
2424
@usableFromInline
@@ -45,11 +45,11 @@ public struct MutableRawSpan: ~Copyable & ~Escapable {
4545
}
4646
}
4747

48-
@available(SwiftStdlib 5.0, *)
48+
@available(SwiftCompatibilitySpan 5.0, *)
4949
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
5050
extension MutableRawSpan: @unchecked Sendable {}
5151

52-
@available(SwiftStdlib 5.0, *)
52+
@available(SwiftCompatibilitySpan 5.0, *)
5353
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
5454
extension MutableRawSpan {
5555

@@ -122,7 +122,7 @@ extension MutableRawSpan {
122122
}
123123
}
124124

125-
@available(SwiftStdlib 5.0, *)
125+
@available(SwiftCompatibilitySpan 5.0, *)
126126
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
127127
extension MutableRawSpan {
128128
@_alwaysEmitIntoClient
@@ -137,7 +137,7 @@ extension MutableRawSpan {
137137
}
138138
}
139139

140-
@available(SwiftStdlib 5.0, *)
140+
@available(SwiftCompatibilitySpan 5.0, *)
141141
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
142142
extension MutableRawSpan {
143143

@@ -163,7 +163,7 @@ extension MutableRawSpan {
163163
}
164164
}
165165

166-
@available(SwiftStdlib 5.0, *)
166+
@available(SwiftCompatibilitySpan 5.0, *)
167167
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
168168
extension RawSpan {
169169

@@ -176,7 +176,7 @@ extension RawSpan {
176176
}
177177
}
178178

179-
@available(SwiftStdlib 5.0, *)
179+
@available(SwiftCompatibilitySpan 5.0, *)
180180
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
181181
extension MutableRawSpan {
182182

@@ -213,7 +213,7 @@ extension MutableRawSpan {
213213
}
214214
}
215215

216-
@available(SwiftStdlib 5.0, *)
216+
@available(SwiftCompatibilitySpan 5.0, *)
217217
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
218218
extension MutableRawSpan {
219219

@@ -355,7 +355,7 @@ extension MutableRawSpan {
355355
#if !SPAN_COMPATIBILITY_STUB
356356

357357
//MARK: copyMemory
358-
@available(SwiftStdlib 5.0, *)
358+
@available(SwiftCompatibilitySpan 5.0, *)
359359
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
360360
extension MutableRawSpan {
361361

@@ -449,7 +449,7 @@ extension MutableRawSpan {
449449
#endif
450450

451451
// MARK: sub-spans
452-
@available(SwiftStdlib 5.0, *)
452+
@available(SwiftCompatibilitySpan 5.0, *)
453453
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
454454
extension MutableRawSpan {
455455

@@ -565,7 +565,7 @@ extension MutableRawSpan {
565565
}
566566

567567
// MARK: prefixes and suffixes
568-
@available(SwiftStdlib 5.0, *)
568+
@available(SwiftCompatibilitySpan 5.0, *)
569569
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
570570
extension MutableRawSpan {
571571

stdlib/public/core/Span/MutableSpan.swift

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import Swift
1818
// contains initialized `Element` instances.
1919
@safe
2020
@frozen
21-
@available(SwiftStdlib 5.0, *)
21+
@available(SwiftCompatibilitySpan 5.0, *)
2222
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
2323
public struct MutableSpan<Element: ~Copyable>
2424
: ~Copyable, ~Escapable {
@@ -46,11 +46,11 @@ public struct MutableSpan<Element: ~Copyable>
4646
}
4747
}
4848

49-
@available(SwiftStdlib 5.0, *)
49+
@available(SwiftCompatibilitySpan 5.0, *)
5050
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
5151
extension MutableSpan: @unchecked Sendable where Element: Sendable {}
5252

53-
@available(SwiftStdlib 5.0, *)
53+
@available(SwiftCompatibilitySpan 5.0, *)
5454
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
5555
extension MutableSpan where Element: ~Copyable {
5656

@@ -94,7 +94,7 @@ extension MutableSpan where Element: ~Copyable {
9494
}
9595
}
9696

97-
@available(SwiftStdlib 5.0, *)
97+
@available(SwiftCompatibilitySpan 5.0, *)
9898
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
9999
extension MutableSpan {
100100

@@ -110,7 +110,7 @@ extension MutableSpan {
110110
}
111111
}
112112

113-
@available(SwiftStdlib 5.0, *)
113+
@available(SwiftCompatibilitySpan 5.0, *)
114114
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
115115
extension MutableSpan where Element: BitwiseCopyable {
116116

@@ -163,7 +163,7 @@ extension MutableSpan where Element: BitwiseCopyable {
163163
}
164164
}
165165

166-
@available(SwiftStdlib 5.0, *)
166+
@available(SwiftCompatibilitySpan 5.0, *)
167167
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
168168
extension Span where Element: ~Copyable {
169169

@@ -180,7 +180,7 @@ extension Span where Element: ~Copyable {
180180
}
181181
}
182182

183-
@available(SwiftStdlib 5.0, *)
183+
@available(SwiftCompatibilitySpan 5.0, *)
184184
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
185185
extension MutableSpan where Element: ~Copyable {
186186

@@ -193,7 +193,7 @@ extension MutableSpan where Element: ~Copyable {
193193
}
194194
}
195195

196-
@available(SwiftStdlib 5.0, *)
196+
@available(SwiftCompatibilitySpan 5.0, *)
197197
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
198198
extension RawSpan {
199199

@@ -210,7 +210,7 @@ extension RawSpan {
210210
}
211211
}
212212

213-
@available(SwiftStdlib 5.0, *)
213+
@available(SwiftCompatibilitySpan 5.0, *)
214214
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
215215
extension MutableSpan where Element: ~Copyable {
216216

@@ -224,7 +224,7 @@ extension MutableSpan where Element: ~Copyable {
224224
}
225225

226226
//MARK: Collection, RandomAccessCollection
227-
@available(SwiftStdlib 5.0, *)
227+
@available(SwiftCompatibilitySpan 5.0, *)
228228
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
229229
extension MutableSpan where Element: ~Copyable {
230230

@@ -242,7 +242,7 @@ extension MutableSpan where Element: ~Copyable {
242242
}
243243
}
244244

245-
@available(SwiftStdlib 5.0, *)
245+
@available(SwiftCompatibilitySpan 5.0, *)
246246
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
247247
extension MutableSpan where Element: BitwiseCopyable {
248248

@@ -258,7 +258,7 @@ extension MutableSpan where Element: BitwiseCopyable {
258258
}
259259
}
260260

261-
@available(SwiftStdlib 5.0, *)
261+
@available(SwiftCompatibilitySpan 5.0, *)
262262
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
263263
extension MutableSpan where Element: ~Copyable {
264264

@@ -312,7 +312,7 @@ extension MutableSpan where Element: ~Copyable {
312312
}
313313
}
314314

315-
@available(SwiftStdlib 5.0, *)
315+
@available(SwiftCompatibilitySpan 5.0, *)
316316
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
317317
extension MutableSpan where Element: ~Copyable {
318318

@@ -336,7 +336,7 @@ extension MutableSpan where Element: ~Copyable {
336336
}
337337
}
338338

339-
@available(SwiftStdlib 5.0, *)
339+
@available(SwiftCompatibilitySpan 5.0, *)
340340
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
341341
extension MutableSpan where Element: BitwiseCopyable {
342342

@@ -386,7 +386,7 @@ extension MutableSpan where Element: BitwiseCopyable {
386386
}
387387
}
388388

389-
@available(SwiftStdlib 5.0, *)
389+
@available(SwiftCompatibilitySpan 5.0, *)
390390
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
391391
extension MutableSpan where Element: ~Copyable {
392392

@@ -418,7 +418,7 @@ extension MutableSpan where Element: ~Copyable {
418418
}
419419
}
420420

421-
@available(SwiftStdlib 5.0, *)
421+
@available(SwiftCompatibilitySpan 5.0, *)
422422
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
423423
extension MutableSpan where Element: BitwiseCopyable {
424424

@@ -445,7 +445,7 @@ extension MutableSpan where Element: BitwiseCopyable {
445445
}
446446

447447
//MARK: bulk-update functions
448-
@available(SwiftStdlib 5.0, *)
448+
@available(SwiftCompatibilitySpan 5.0, *)
449449
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
450450
extension MutableSpan {
451451

@@ -531,7 +531,7 @@ extension MutableSpan {
531531
}
532532
}
533533

534-
@available(SwiftStdlib 5.0, *)
534+
@available(SwiftCompatibilitySpan 5.0, *)
535535
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
536536
extension MutableSpan where Element: ~Copyable {
537537

@@ -565,7 +565,7 @@ extension MutableSpan where Element: ~Copyable {
565565
}
566566
}
567567

568-
@available(SwiftStdlib 5.0, *)
568+
@available(SwiftCompatibilitySpan 5.0, *)
569569
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
570570
extension MutableSpan {
571571

@@ -578,7 +578,7 @@ extension MutableSpan {
578578
}
579579
}
580580

581-
@available(SwiftStdlib 5.0, *)
581+
@available(SwiftCompatibilitySpan 5.0, *)
582582
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
583583
extension MutableSpan where Element: BitwiseCopyable {
584584

@@ -673,7 +673,7 @@ extension MutableSpan where Element: BitwiseCopyable {
673673
}
674674

675675
// MARK: sub-spans
676-
@available(SwiftStdlib 5.0, *)
676+
@available(SwiftCompatibilitySpan 5.0, *)
677677
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
678678
extension MutableSpan where Element: ~Copyable {
679679

@@ -792,7 +792,7 @@ extension MutableSpan where Element: ~Copyable {
792792
}
793793

794794
// MARK: prefixes and suffixes
795-
@available(SwiftStdlib 5.0, *)
795+
@available(SwiftCompatibilitySpan 5.0, *)
796796
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
797797
extension MutableSpan where Element: ~Copyable {
798798

stdlib/public/core/Span/RawSpan.swift

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ import Swift
2222
/// owning the contiguous memory, ensuring temporal safety and avoiding
2323
/// use-after-free errors. Operations on `RawSpan` are bounds-checked,
2424
/// ensuring spcial safety and avoiding buffer overflow errors.
25-
@available(SwiftStdlib 5.0, *)
25+
@available(SwiftCompatibilitySpan 5.0, *)
2626
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
2727
@frozen
2828
@safe
@@ -85,11 +85,11 @@ public struct RawSpan: ~Escapable, Copyable, BitwiseCopyable {
8585
}
8686
}
8787

88-
@available(SwiftStdlib 5.0, *)
88+
@available(SwiftCompatibilitySpan 5.0, *)
8989
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
9090
extension RawSpan: @unchecked Sendable {}
9191

92-
@available(SwiftStdlib 5.0, *)
92+
@available(SwiftCompatibilitySpan 5.0, *)
9393
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
9494
extension RawSpan {
9595

@@ -329,7 +329,7 @@ extension RawSpan {
329329
}
330330
}
331331

332-
@available(SwiftStdlib 5.0, *)
332+
@available(SwiftCompatibilitySpan 5.0, *)
333333
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
334334
extension RawSpan {
335335

@@ -359,7 +359,7 @@ extension RawSpan {
359359
}
360360

361361
// MARK: extracting sub-spans
362-
@available(SwiftStdlib 5.0, *)
362+
@available(SwiftCompatibilitySpan 5.0, *)
363363
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
364364
extension RawSpan {
365365

@@ -473,7 +473,7 @@ extension RawSpan {
473473
}
474474
}
475475

476-
@available(SwiftStdlib 5.0, *)
476+
@available(SwiftCompatibilitySpan 5.0, *)
477477
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
478478
extension RawSpan {
479479

@@ -504,7 +504,7 @@ extension RawSpan {
504504
}
505505
}
506506

507-
@available(SwiftStdlib 5.0, *)
507+
@available(SwiftCompatibilitySpan 5.0, *)
508508
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
509509
extension RawSpan {
510510

@@ -537,7 +537,7 @@ extension RawSpan {
537537
}
538538

539539
// MARK: load
540-
@available(SwiftStdlib 5.0, *)
540+
@available(SwiftCompatibilitySpan 5.0, *)
541541
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
542542
extension RawSpan {
543543

@@ -654,7 +654,7 @@ extension RawSpan {
654654
}
655655
}
656656

657-
@available(SwiftStdlib 5.0, *)
657+
@available(SwiftCompatibilitySpan 5.0, *)
658658
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
659659
extension RawSpan {
660660
/// Returns a Boolean value indicating whether two `RawSpan` instances
@@ -687,7 +687,7 @@ extension RawSpan {
687687
}
688688

689689
// MARK: prefixes and suffixes
690-
@available(SwiftStdlib 5.0, *)
690+
@available(SwiftCompatibilitySpan 5.0, *)
691691
@_originallyDefinedIn(module: "Swift;CompatibilitySpan", SwiftCompatibilitySpan 6.2)
692692
extension RawSpan {
693693

0 commit comments

Comments
 (0)