Skip to content

Commit 7e3f17c

Browse files
committed
Keypaths: Remove workaround for rdar://problem/31749245
1 parent 10661df commit 7e3f17c

File tree

1 file changed

+0
-21
lines changed

1 file changed

+0
-21
lines changed

stdlib/public/core/KeyPath.swift

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -192,9 +192,6 @@ public class KeyPath<Root, Value>: PartialKeyPath<Root> {
192192
let isLast = optNextType == nil
193193

194194
func project<CurValue>(_ base: CurValue) -> Value? {
195-
// FIXME: Opened archetype specialization fails to propagate uses
196-
// in some cases. rdar://problem/31749245
197-
@inline(never)
198195
func project2<NewValue>(_: NewValue.Type) -> Value? {
199196
let newBase: NewValue = rawComponent.projectReadOnly(base)
200197
if isLast {
@@ -246,9 +243,6 @@ public class WritableKeyPath<Root, Value>: KeyPath<Root, Value> {
246243
let nextType = optNextType ?? Value.self
247244

248245
func project<CurValue>(_: CurValue.Type) {
249-
// FIXME: Opened archetype specialization fails to propagate uses
250-
// in some cases. rdar://problem/31749245
251-
@inline(never)
252246
func project2<NewValue>(_: NewValue.Type) {
253247
p = rawComponent.projectMutableAddress(p,
254248
from: CurValue.self,
@@ -300,9 +294,6 @@ public class ReferenceWritableKeyPath<Root, Value>: WritableKeyPath<Root, Value>
300294
let nextType = optNextType.unsafelyUnwrapped
301295

302296
func project<NewValue>(_: NewValue.Type) -> Any {
303-
// FIXME: Opened archetype specialization fails to propagate uses
304-
// in some cases. rdar://problem/31749245
305-
@inline(never)
306297
func project2<CurValue>(_ base: CurValue) -> Any {
307298
return rawComponent.projectReadOnly(base) as NewValue
308299
}
@@ -313,9 +304,6 @@ public class ReferenceWritableKeyPath<Root, Value>: WritableKeyPath<Root, Value>
313304

314305
// Start formal access to the mutable value, based on the final base
315306
// value.
316-
// FIXME: Opened archetype specialization fails to propagate uses
317-
// in some cases. rdar://problem/31749245
318-
@inline(never)
319307
func formalMutation<MutationRoot>(_ base: MutationRoot)
320308
-> UnsafeMutablePointer<Value> {
321309
var base2 = base
@@ -326,9 +314,6 @@ public class ReferenceWritableKeyPath<Root, Value>: WritableKeyPath<Root, Value>
326314
let (rawComponent, optNextType) = buffer.next()
327315
let nextType = optNextType ?? Value.self
328316
func project<CurValue>(_: CurValue.Type) {
329-
// FIXME: Opened archetype specialization fails to propagate uses
330-
// in some cases. rdar://problem/31749245
331-
@inline(never)
332317
func project2<NewValue>(_: NewValue.Type) {
333318
p = rawComponent.projectMutableAddress(p,
334319
from: CurValue.self,
@@ -1255,9 +1240,6 @@ public func _tryToAppendKeyPaths<Result: AnyKeyPath>(
12551240

12561241
func open<Root>(_: Root.Type) -> Result {
12571242
func open2<Value>(_: Value.Type) -> Result {
1258-
// FIXME: Opened archetype specialization fails to propagate uses
1259-
// in some cases. rdar://problem/31749245
1260-
@inline(never)
12611243
func open3<AppendedValue>(_: AppendedValue.Type) -> Result {
12621244
let typedRoot = unsafeDowncast(root, to: KeyPath<Root, Value>.self)
12631245
let typedLeaf = unsafeDowncast(leaf,
@@ -1642,9 +1624,6 @@ internal func _getKeyPathClassAndInstanceSize(
16421624

16431625
// Grab the class object for the key path type we'll end up with.
16441626
func openRoot<Root>(_: Root.Type) -> AnyKeyPath.Type {
1645-
// FIXME: Opened archetype specialization fails to propagate uses
1646-
// in some cases. rdar://problem/31749245
1647-
@inline(never)
16481627
func openLeaf<Leaf>(_: Leaf.Type) -> AnyKeyPath.Type {
16491628
switch capability {
16501629
case .readOnly:

0 commit comments

Comments
 (0)