Skip to content

Commit a67f3b9

Browse files
Merge pull request #23452 from aschwaighofer/add_test_optimize_none_implicit_dynamic
Add a test mode to exercise implicit dynamic
2 parents a169a95 + ddcfb10 commit a67f3b9

File tree

114 files changed

+370
-13
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

114 files changed

+370
-13
lines changed

test/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,7 @@ set(profdata_merge_worker
135135

136136
set(TEST_MODES
137137
optimize_none optimize optimize_unchecked optimize_size
138+
optimize_none_with_implicit_dynamic
138139
only_executable only_non_executable
139140
)
140141
set(TEST_SUBSETS

test/IRGen/report_dead_method_call.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111
// RUN: %target-run %t/report_dead_method_call
1212
// REQUIRES: executable_test
1313

14+
// UNSUPPORTED: swift_test_mode_optimize_none_with_implicit_dynamic
15+
1416
private protocol PrivateProto {
1517
func abc()
1618
}

test/Interpreter/SDK/mapkit_header_static.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@
44
// REQUIRES: objc_interop
55
// UNSUPPORTED: OS=tvos
66

7+
// Requires swift-version 4
8+
// UNSUPPORTED: swift_test_mode_optimize_none_with_implicit_dynamic
9+
710
import MapKit
811

912
let rect = MKMapRectMake(1.0, 2.0, 3.0, 4.0)

test/Interpreter/SDK/mixed_mode_class_with_missing_properties.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@
1111
// REQUIRES: objc_interop
1212
// REQUIRES: executable_test
1313

14+
// Requires swift-version 4
15+
// UNSUPPORTED: swift_test_mode_optimize_none_with_implicit_dynamic
16+
1417
import UsingObjCStuff
1518

1619
print("Let's go") // CHECK: Let's go

test/Interpreter/SDK/objc_factory_method.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@
44
// REQUIRES: executable_test
55
// REQUIRES: OS=macosx
66

7+
// Requires swift-version 4
8+
// UNSUPPORTED: swift_test_mode_optimize_none_with_implicit_dynamic
9+
710
import AppKit
811

912
let image = NSImage(named: NSImage.Name.trashEmpty)

test/Interpreter/SDK/objc_swift3_deprecated_objc_inference.swift

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,17 @@
1515
// REQUIRES: executable_test
1616
// REQUIRES: objc_interop
1717

18+
// Requires explicit swift-version 4.
19+
// UNSUPPORTED: swift_test_mode_optimize_none_with_implicit_dynamic
20+
1821
import StdlibUnittest
1922
import Foundation
2023

2124
var DeprecatedObjCInferenceTestSuite = TestSuite("DeprecatedObjCInferenceTestSuite")
2225

2326
class MyClass : NSObject {
2427
// The line numbers of the next two methods are mentioned in the CHECK lines
25-
// below. Please keep them as 26 and 27.
28+
// below. Please keep them as 29 and 30.
2629
func foo() { }
2730
class func bar() { }
2831
}
@@ -42,15 +45,15 @@ DeprecatedObjCInferenceTestSuite.test("messagingObjCInference") {
4245
// CHECK_CRASH: ---Begin
4346
fputs("---Begin\n", stderr)
4447

45-
// CHECK_WARNINGS: .swift:26:3: implicit Objective-C entrypoint -[a.MyClass foo]
46-
// CHECK_CRASH: .swift:26:3: implicit Objective-C entrypoint -[a.MyClass foo]
48+
// CHECK_WARNINGS: .swift:29:3: implicit Objective-C entrypoint -[a.MyClass foo]
49+
// CHECK_CRASH: .swift:29:3: implicit Objective-C entrypoint -[a.MyClass foo]
4750
x.perform(Selector(fooSel))
48-
// CHECK_WARNINGS-NOT: .swift:26:3: implicit Objective-C entrypoint -[a.MyClass foo]
51+
// CHECK_WARNINGS-NOT: .swift:29:3: implicit Objective-C entrypoint -[a.MyClass foo]
4952
x.perform(Selector(fooSel))
5053

51-
// CHECK_WARNINGS: .swift:27:3: implicit Objective-C entrypoint +[a.MyClass bar]
54+
// CHECK_WARNINGS: .swift:30:3: implicit Objective-C entrypoint +[a.MyClass bar]
5255
type(of: x).perform(Selector(barSel))
53-
// CHECK_WARNINGS-NOT: .swift:27:3: implicit Objective-C entrypoint +[a.MyClass bar]
56+
// CHECK_WARNINGS-NOT: .swift:30:3: implicit Objective-C entrypoint +[a.MyClass bar]
5457
type(of: x).perform(Selector(barSel))
5558

5659
// CHECK_NOTHING-NEXT: ---End

test/Interpreter/SDK/object_literals.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,9 @@
77
// REQUIRES: executable_test
88
// REQUIRES: OS=macosx
99

10+
// Requires swift-version 4
11+
// UNSUPPORTED: swift_test_mode_optimize_none_with_implicit_dynamic
12+
1013
import AppKit
1114
import StdlibUnittest
1215

test/Interpreter/dynamicReplacement_property_observer.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77

88
// REQUIRES: executable_test
99

10+
// UNSUPPORTED: swift_test_mode_optimize_none_with_implicit_dynamic
11+
1012
@_private(sourceFile: "dynamic_replacement_property_observer_orig.swift") import TestDidWillSet
1113

1214
#if os(macOS) || os(iOS) || os(tvOS) || os(watchOS)

test/Interpreter/dynamic_cast_optionals_to_nsobject.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22
// REQUIRES: executable_test
33
// REQUIRES: objc_interop
44

5+
// Requires swift-version 4.
6+
// UNSUPPORTED: swift_test_mode_optimize_none_with_implicit_dynamic
7+
58
import Foundation
69

710
// rdar://problem/36477954

test/Interpreter/dynamic_replacement_chaining.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@
1818

1919
// REQUIRES: executable_test
2020

21+
// This test flips the chaining flag.
22+
// UNSUPPORTED: swift_test_mode_optimize_none_with_implicit_dynamic
23+
2124
import A
2225

2326
import StdlibUnittest

0 commit comments

Comments
 (0)