From d34f3ee96d66df677c3edc17d4fc481c5147d860 Mon Sep 17 00:00:00 2001 From: ben-cohen Date: Tue, 11 Oct 2016 17:56:42 -0700 Subject: [PATCH] =?UTF-8?q?Remove=20dummy=20Void=20args=20working=20around?= =?UTF-8?q?=20fixed=20typechecker=20bug=20=E2=80=93=20ABI=20FIXME=20#26?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- stdlib/public/core/ContiguousArrayBuffer.swift | 12 ++++-------- stdlib/public/core/SwiftNativeNSArray.swift | 4 ++-- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/stdlib/public/core/ContiguousArrayBuffer.swift b/stdlib/public/core/ContiguousArrayBuffer.swift index 8d2b0ed72aceb..98dd2e646af9f 100644 --- a/stdlib/public/core/ContiguousArrayBuffer.swift +++ b/stdlib/public/core/ContiguousArrayBuffer.swift @@ -32,15 +32,11 @@ internal final class _EmptyArrayStorage return try body(UnsafeBufferPointer(start: nil, count: 0)) } - // FIXME(ABI)#26 (Type Checker): remove 'Void' arguments here and elsewhere in this file, they - // are a workaround for an old compiler limitation. - override func _getNonVerbatimBridgedCount(_ dummy: Void) -> Int { + override func _getNonVerbatimBridgedCount() -> Int { return 0 } - override func _getNonVerbatimBridgedHeapBuffer( - _ dummy: Void - ) -> _HeapBuffer { + override func _getNonVerbatimBridgedHeapBuffer() -> _HeapBuffer { return _HeapBuffer( _HeapBufferStorage.self, 0, 0) } @@ -122,7 +118,7 @@ final class _ContiguousArrayStorage : _ContiguousArrayStorage1 { /// Returns the number of elements in the array. /// /// - Precondition: `Element` is bridged non-verbatim. - override internal func _getNonVerbatimBridgedCount(_ dummy: Void) -> Int { + override internal func _getNonVerbatimBridgedCount() -> Int { _sanityCheck( !_isBridgedVerbatimToObjectiveC(Element.self), "Verbatim bridging should be handled separately") @@ -132,7 +128,7 @@ final class _ContiguousArrayStorage : _ContiguousArrayStorage1 { /// Bridge array elements and return a new buffer that owns them. /// /// - Precondition: `Element` is bridged non-verbatim. - override internal func _getNonVerbatimBridgedHeapBuffer(_ dummy: Void) -> + override internal func _getNonVerbatimBridgedHeapBuffer() -> _HeapBuffer { _sanityCheck( !_isBridgedVerbatimToObjectiveC(Element.self), diff --git a/stdlib/public/core/SwiftNativeNSArray.swift b/stdlib/public/core/SwiftNativeNSArray.swift index 1b84f41fc3f9d..f9db2796accb4 100644 --- a/stdlib/public/core/SwiftNativeNSArray.swift +++ b/stdlib/public/core/SwiftNativeNSArray.swift @@ -259,12 +259,12 @@ internal class _ContiguousArrayStorageBase "Concrete subclasses must implement _withVerbatimBridgedUnsafeBuffer") } - internal func _getNonVerbatimBridgedCount(_ dummy: Void) -> Int { + internal func _getNonVerbatimBridgedCount() -> Int { _sanityCheckFailure( "Concrete subclasses must implement _getNonVerbatimBridgedCount") } - internal func _getNonVerbatimBridgedHeapBuffer(_ dummy: Void) -> + internal func _getNonVerbatimBridgedHeapBuffer() -> _HeapBuffer { _sanityCheckFailure( "Concrete subclasses must implement _getNonVerbatimBridgedHeapBuffer")