File tree Expand file tree Collapse file tree 3 files changed +20
-2
lines changed Expand file tree Collapse file tree 3 files changed +20
-2
lines changed Original file line number Diff line number Diff line change @@ -89,7 +89,11 @@ extension InlineArray where Element: ~Copyable {
89
89
@_alwaysEmitIntoClient
90
90
@_transparent
91
91
internal var _protectedAddress : UnsafePointer < Element > {
92
+ #if $AddressOfProperty
93
+ unsafe UnsafePointer< Element > ( Builtin . addressOfBorrow ( _storage) )
94
+ #else
92
95
unsafe UnsafePointer< Element > ( Builtin . addressOfBorrow ( self ) )
96
+ #endif
93
97
}
94
98
95
99
/// Returns a buffer pointer over the entire array while performing stack
@@ -137,7 +141,11 @@ extension InlineArray where Element: ~Copyable {
137
141
@_transparent
138
142
internal var _protectedMutableAddress : UnsafeMutablePointer < Element > {
139
143
mutating get {
144
+ #if $AddressOfProperty
145
+ unsafe UnsafeMutablePointer< Element > ( Builtin . addressof ( & _storage) )
146
+ #else
140
147
unsafe UnsafeMutablePointer< Element > ( Builtin . addressof ( & self ) )
148
+ #endif
141
149
}
142
150
}
143
151
@@ -518,6 +526,7 @@ extension InlineArray where Element: ~Copyable {
518
526
@_alwaysEmitIntoClient
519
527
public var span: Span< Element > {
520
528
@lifetime ( borrow self)
529
+ @_transparent
521
530
borrowing get {
522
531
let span = unsafe Span( _unsafeStart: _protectedAddress, count: count)
523
532
return unsafe _override Lifetime( span, borrowing : self)
@@ -528,6 +537,7 @@ extension InlineArray where Element: ~Copyable {
528
537
@_alwaysEmitIntoClient
529
538
public var mutableSpan : MutableSpan < Element > {
530
539
@lifetime ( & self )
540
+ @_transparent
531
541
mutating get {
532
542
let span = unsafe MutableSpan(
533
543
_unsafeStart: _protectedMutableAddress,
Original file line number Diff line number Diff line change @@ -931,7 +931,6 @@ Added: _$sSs8UTF8ViewV4spans4SpanVys5UInt8VGvg
931
931
Added: _$sSa11mutableSpans07MutableB0VyxGvr
932
932
Added: _$ss10ArraySliceV11mutableSpans07MutableD0VyxGvr
933
933
Added: _$ss15ContiguousArrayV11mutableSpans07MutableD0VyxGvr
934
- Added: _$ss11InlineArrayVsRi__rlE11mutableSpans07MutableD0Vyq_Gvr
935
934
Added: _$ss15CollectionOfOneV11mutableSpans07MutableE0VyxGvr
936
935
Added: _$sSrsRi_zrlE11mutableSpans07MutableB0VyxGvr
937
936
Added: _$sSw12mutableBytess14MutableRawSpanVvr
@@ -1085,3 +1084,8 @@ Added: _$ss8UTF8SpanV9_asciiBits6UInt64VvpZMV
1085
1084
1086
1085
// printing foreign reference types requires a new displayStyle: .foreign
1087
1086
Added: _$ss6MirrorV12DisplayStyleO16foreignReferenceyA2DmFWC
1087
+
1088
+ // var InlineArray._protectedBuffer
1089
+ // var InlineArray._protectedAddress
1090
+ Added: _$ss11InlineArrayVsRi__rlE16_protectedBufferSRyq_GvpMV
1091
+ Added: _$ss11InlineArrayVsRi__rlE17_protectedAddressSPyq_GvpMV
Original file line number Diff line number Diff line change @@ -932,7 +932,6 @@ Added: _$sSs8UTF8ViewV4spans4SpanVys5UInt8VGvg
932
932
Added: _$sSa11mutableSpans07MutableB0VyxGvr
933
933
Added: _$ss10ArraySliceV11mutableSpans07MutableD0VyxGvr
934
934
Added: _$ss15ContiguousArrayV11mutableSpans07MutableD0VyxGvr
935
- Added: _$ss11InlineArrayVsRi__rlE11mutableSpans07MutableD0Vyq_Gvr
936
935
Added: _$ss15CollectionOfOneV11mutableSpans07MutableE0VyxGvr
937
936
Added: _$sSrsRi_zrlE11mutableSpans07MutableB0VyxGvr
938
937
Added: _$sSw12mutableBytess14MutableRawSpanVvr
@@ -1085,3 +1084,8 @@ Added: _$ss8UTF8SpanV9_asciiBits6UInt64VvpZMV
1085
1084
1086
1085
// printing foreign reference types requires a new displayStyle: .foreign
1087
1086
Added: _$ss6MirrorV12DisplayStyleO16foreignReferenceyA2DmFWC
1087
+
1088
+ // var InlineArray._protectedBuffer
1089
+ // var InlineArray._protectedAddress
1090
+ Added: _$ss11InlineArrayVsRi__rlE16_protectedBufferSRyq_GvpMV
1091
+ Added: _$ss11InlineArrayVsRi__rlE17_protectedAddressSPyq_GvpMV
You can’t perform that action at this time.
0 commit comments