mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
We generally don't want to override unavailable methods. We already filter out unavailable decls when completing values, but that's in a separate visible decl consumer. rdar://problem/25058233
26 lines
859 B
Swift
26 lines
859 B
Swift
// RUN: %target-swift-ide-test -code-completion -source-filename %s -code-completion-token=MEMBER | FileCheck %s -check-prefix=CHECK1
|
|
// CHECK1: Begin completions, 2 items
|
|
// CHECK1: Decl[InstanceMethod]/CurrNominal: foo({#self: A#})[#() -> Void#]
|
|
// CHECK1: Decl[Constructor]/CurrNominal: init()[#A#]; name=init(){{$}}
|
|
// CHECK1: End completions
|
|
|
|
// RUN: %target-swift-ide-test -code-completion -source-filename %s -code-completion-token=OVERRIDE_1 | FileCheck %s -check-prefix=OVERRIDE_1
|
|
|
|
class A {
|
|
func foo() {}
|
|
@available(*, unavailable) func unavail() {}
|
|
}
|
|
|
|
func glob() {
|
|
A.#^MEMBER^#
|
|
}
|
|
|
|
class B : A {
|
|
override func #^OVERRIDE_1^#
|
|
// OVERRIDE_1: Begin completions
|
|
// OVERRIDE_1-NOT: Decl[InstanceMethod]
|
|
// OVERRIDE_1: Decl[InstanceMethod]/Super: foo() {|};
|
|
// OVERRIDE_1-NOT: Decl[InstanceMethod]
|
|
// OVERRIDE_1: End completions
|
|
}
|