Skip to content

Commit 94e8f53

Browse files
committed
Enable string processing by default.
Make frontend flag `-enable-experimental-string-processing` default to true.
1 parent 9857464 commit 94e8f53

File tree

54 files changed

+182
-111
lines changed

Some content is hidden

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

54 files changed

+182
-111
lines changed

SwiftCompilerSources/CMakeLists.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,9 @@ function(add_swift_compiler_modules_library name)
7777
"-Xfrontend" "-validate-tbd-against-ir=none"
7878
"-Xfrontend" "-enable-cxx-interop"
7979
"-Xcc" "-UIBOutlet" "-Xcc" "-UIBAction" "-Xcc" "-UIBInspectable")
80+
if (NOT BOOTSTRAPPING_MODE STREQUAL "HOSTTOOLS")
81+
list(APPEND swift_compile_options "-Xfrontend" "-disable-implicit-string-processing-module-import")
82+
endif()
8083

8184
if(CMAKE_BUILD_TYPE STREQUAL Debug)
8285
list(APPEND swift_compile_options "-g")

lib/Frontend/CompilerInvocation.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -607,8 +607,7 @@ static bool ParseLangArgs(LangOptions &Opts, ArgList &Args,
607607
// Determine whether string processing is enabled
608608
Opts.EnableExperimentalStringProcessing =
609609
Args.hasFlag(OPT_enable_experimental_string_processing,
610-
OPT_disable_experimental_string_processing,
611-
Args.hasArg(OPT_enable_bare_slash_regex));
610+
OPT_disable_experimental_string_processing);
612611

613612
// Add a future feature if it is not already implied by the language version.
614613
auto addFutureFeatureIfNotImplied = [&](Feature feature) {

test/Frontend/module-alias-explicit-build.swift

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,11 @@
3333
// RUN: echo "\"moduleName\": \"_Concurrency\"," >> %/t/inputs/map.json
3434
// RUN: echo "\"modulePath\": \"%/concurrency_module\"," >> %/t/inputs/map.json
3535
// RUN: echo "\"isFramework\": false" >> %/t/inputs/map.json
36+
// RUN: echo "}," >> %/t/inputs/map.json
37+
// RUN: echo "{" >> %/t/inputs/map.json
38+
// RUN: echo "\"moduleName\": \"_StringProcessing\"," >> %/t/inputs/map.json
39+
// RUN: echo "\"modulePath\": \"%/string_processing_module\"," >> %/t/inputs/map.json
40+
// RUN: echo "\"isFramework\": false" >> %/t/inputs/map.json
3641
// RUN: echo "}]" >> %/t/inputs/map.json
3742

3843
/// Create a module Foo that imports Cat with -module-alias Cat=Bar with an explicit module loader

test/IDE/print_module_comments.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// RUN: %empty-directory(%t)
22
//
33
// Build swift modules this test depends on.
4-
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -emit-module %S/Inputs/foo_swift_module.swift -emit-module-path %t/foo_swift_module.swiftmodule -emit-module-doc-path %t/foo_swift_module.swiftdoc
4+
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -emit-module %S/Inputs/foo_swift_module.swift -emit-module-path %t/foo_swift_module.swiftmodule -emit-module-doc-path %t/foo_swift_module.swiftdoc
55
//
66
// RUN: %target-swift-ide-test -print-module -source-filename %s -I %t -module-to-print=foo_swift_module > %t.printed.txt
77
// RUN: diff %t.printed.txt %S/Inputs/foo_swift_module.printed.comments.txt

test/IRGen/ELF-remove-autolink-section.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// RUN: %swiftc_driver -emit-ir %s -o - -Xfrontend -disable-implicit-concurrency-module-import | %FileCheck %s -check-prefix ELF
1+
// RUN: %swiftc_driver -emit-ir %s -o - -Xfrontend -disable-implicit-concurrency-module-import -Xfrontend -disable-implicit-string-processing-module-import | %FileCheck %s -check-prefix ELF
22

33
// Check that the swift auto link section is available in the object file.
44
// RUN: %swiftc_driver -c %s -o %t -Xfrontend -disable-implicit-concurrency-module-import

test/Index/Store/cross-import-overlay.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
// RUN: cp -r %S/../Inputs/CrossImport %t/CrossImport
44
// RUN: %{python} %S/../../CrossImport/Inputs/rewrite-module-triples.py %t/CrossImport %module-target-triple
55

6-
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -c -index-store-path %t/idx -module-cache-path %t/mcp -index-system-modules -index-ignore-stdlib -enable-cross-import-overlays %s -Fsystem %t/CrossImport -o %t/file1.o -module-name cross_import_overlay
6+
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -c -index-store-path %t/idx -module-cache-path %t/mcp -index-system-modules -index-ignore-stdlib -enable-cross-import-overlays %s -Fsystem %t/CrossImport -o %t/file1.o -module-name cross_import_overlay
77
// RUN: c-index-test core -print-unit %t/idx > %t/units
88

99
import A

test/Index/Store/unit-from-compile.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// RUN: %empty-directory(%t)
2-
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -c -index-store-path %t/idx %s -o %t/file1.o -module-name some_module_test
2+
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -c -index-store-path %t/idx %s -o %t/file1.o -module-name some_module_test
33
// RUN: c-index-test core -print-unit %t/idx | %FileCheck %s
4-
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -c -index-store-path %t/idx_opt %s -o %t/file1.o -module-name some_module_test -O
4+
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -c -index-store-path %t/idx_opt %s -o %t/file1.o -module-name some_module_test -O
55
// RUN: c-index-test core -print-unit %t/idx | %FileCheck %s -check-prefix=OPT
66

77
// CHECK: file1.o

test/Index/Store/unit-one-file-multi-file-invocation.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// RUN: %empty-directory(%t)
2-
// RUN: %target-build-swift -Xfrontend -disable-implicit-concurrency-module-import -index-file -index-file-path %s %s %S/Inputs/SwiftModuleA.swift -module-name unit_one_test -o %t/00-output_for_index -index-store-path %t/idx
2+
// RUN: %target-build-swift -Xfrontend -disable-implicit-concurrency-module-import -Xfrontend -disable-implicit-string-processing-module-import -index-file -index-file-path %s %s %S/Inputs/SwiftModuleA.swift -module-name unit_one_test -o %t/00-output_for_index -index-store-path %t/idx
33
// RUN: c-index-test core -print-unit %t/idx | %FileCheck %s -implicit-check-not SwiftShims
44

55
// The output is sorted by last path component, so make sure the top-level entry

test/Index/Store/unit-pcm-dependency.swift

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
// RUN: rm -rf %t
2-
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -index-store-path %t/idx -primary-file %s -o %t/s1.o -I %S/Inputs -typecheck -module-cache-path %t/mcp -enable-objc-interop
2+
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -index-store-path %t/idx -primary-file %s -o %t/s1.o -I %S/Inputs -typecheck -module-cache-path %t/mcp -enable-objc-interop
33
// RUN: c-index-test core -print-unit %t/idx | %FileCheck %s -check-prefixes=FILE1,FILE1-PCM
44

55
// If the module cache already exists, the pcm gets indexed.
66
// RUN: rm -rf %t/idx
7-
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -index-store-path %t/idx -primary-file %s -o %t/s1.o -I %S/Inputs -typecheck -module-cache-path %t/mcp -enable-objc-interop
7+
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -index-store-path %t/idx -primary-file %s -o %t/s1.o -I %S/Inputs -typecheck -module-cache-path %t/mcp -enable-objc-interop
88
// RUN: c-index-test core -print-unit %t/idx | %FileCheck %s -check-prefixes=FILE1,FILE1-PCM
99

1010
// FIXME: index the bridging header!
1111

1212
// RUN: %empty-directory(%t)
1313
// RUN: echo 'import ClangModuleA' > %t/s2.swift
14-
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -index-store-path %t/idx %s %t/s2.swift -o %t/s1.o -o %t/s2.o -I %S/Inputs -c -emit-module -module-name main -emit-module-path %t/main.swiftmodule -module-cache-path %t/mcp -enable-objc-interop
14+
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -index-store-path %t/idx %s %t/s2.swift -o %t/s1.o -o %t/s2.o -I %S/Inputs -c -emit-module -module-name main -emit-module-path %t/main.swiftmodule -module-cache-path %t/mcp -enable-objc-interop
1515
// RUN: c-index-test core -print-unit %t/idx > %t/both.txt
1616
// RUN: %FileCheck %s -check-prefixes=FILE1,FILE1-PCM < %t/both.txt
1717
// RUN: %FileCheck %s -check-prefixes=FILE2,FILE2-PCM < %t/both.txt
@@ -21,7 +21,7 @@
2121

2222
// RUN: %empty-directory(%t)
2323
// RUN: echo 'import ClangModuleA' > %t/s2.swift
24-
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -index-store-path %t/idx -index-ignore-clang-modules %s %t/s2.swift -o %t/s1.o -o %t/s2.o -I %S/Inputs -c -emit-module -module-name main -emit-module-path %t/main.swiftmodule -module-cache-path %t/mcp -enable-objc-interop
24+
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -index-store-path %t/idx -index-ignore-clang-modules %s %t/s2.swift -o %t/s1.o -o %t/s2.o -I %S/Inputs -c -emit-module -module-name main -emit-module-path %t/main.swiftmodule -module-cache-path %t/mcp -enable-objc-interop
2525
// RUN: c-index-test core -print-unit %t/idx > %t/both.txt
2626
// RUN: %FileCheck %s -check-prefixes=FILE1,FILE1-IGNORE < %t/both.txt --dump-input-filter all
2727
// RUN: %FileCheck %s -check-prefixes=FILE2,FILE2-IGNORE < %t/both.txt

test/Index/Store/unit-with-bridging-header.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
// RUN: %empty-directory(%t)
2-
// RUN: %target-swift-frontend(mock-sdk: %clang-importer-sdk) -disable-implicit-concurrency-module-import -emit-pch -index-store-path %t/idx -o %t/bridge-head.pch %S/Inputs/bridge-head.h
3-
// RUN: %target-swift-frontend(mock-sdk: %clang-importer-sdk) -disable-implicit-concurrency-module-import -typecheck -import-objc-header %t/bridge-head.pch -primary-file %s -o %t/s1.o -index-store-path %t/idx
2+
// RUN: %target-swift-frontend(mock-sdk: %clang-importer-sdk) -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -emit-pch -index-store-path %t/idx -o %t/bridge-head.pch %S/Inputs/bridge-head.h
3+
// RUN: %target-swift-frontend(mock-sdk: %clang-importer-sdk) -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -typecheck -import-objc-header %t/bridge-head.pch -primary-file %s -o %t/s1.o -index-store-path %t/idx
44
// RUN: c-index-test core -print-record %t/idx | %FileCheck %s --check-prefix=PCH-RECORD
55
// RUN: c-index-test core -print-unit %t/idx | %FileCheck %s --check-prefix=PCH-UNIT
6-
// RUN: %target-swift-frontend(mock-sdk: %clang-importer-sdk) -disable-implicit-concurrency-module-import -typecheck -import-objc-header %S/Inputs/bridge-head.h -primary-file %s -o %t/s1.o -index-store-path %t/idx2
6+
// RUN: %target-swift-frontend(mock-sdk: %clang-importer-sdk) -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -typecheck -import-objc-header %S/Inputs/bridge-head.h -primary-file %s -o %t/s1.o -index-store-path %t/idx2
77
// RUN: c-index-test core -print-unit %t/idx2 | %FileCheck --check-prefix=TEXTUAL-UNIT %s
88

99
// PCH-RECORD: bridge-include.h

test/ModuleInterface/ModuleCache/module-cache-diagnostics.swift

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,11 @@
2424
// Setup phase 2: build modules, pushing timestamps of inputs and intermediates into the past as we go.
2525
//
2626
// RUN: %{python} %S/Inputs/make-old.py %t/leaf.swift %t/other.swift
27-
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -I %t -emit-module-interface-path %t/LeafModule.swiftinterface -module-name LeafModule %t/leaf.swift -emit-module -o /dev/null
27+
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -I %t -emit-module-interface-path %t/LeafModule.swiftinterface -module-name LeafModule %t/leaf.swift -emit-module -o /dev/null
2828
// RUN: %{python} %S/Inputs/make-old.py %t/LeafModule.swiftinterface
29-
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -I %t -module-cache-path %t/modulecache -emit-module-interface-path %t/OtherModule.swiftinterface -module-name OtherModule %t/other.swift -emit-module -o /dev/null
29+
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -I %t -module-cache-path %t/modulecache -emit-module-interface-path %t/OtherModule.swiftinterface -module-name OtherModule %t/other.swift -emit-module -o /dev/null
3030
// RUN: %{python} %S/Inputs/make-old.py %t/modulecache/LeafModule-*.swiftmodule %t/OtherModule.swiftinterface
31-
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -I %t -module-cache-path %t/modulecache -emit-module -o %t/TestModule.swiftmodule -module-name TestModule %s
31+
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -I %t -module-cache-path %t/modulecache -emit-module -o %t/TestModule.swiftmodule -module-name TestModule %s
3232
// RUN: %{python} %S/Inputs/make-old.py %t/modulecache/OtherModule-*.swiftmodule
3333
//
3434
//
@@ -41,7 +41,7 @@
4141
// RUN: %{python} %S/Inputs/make-old.py %t/LeafModule.swiftinterface
4242
// RUN: %{python} %S/Inputs/check-is-old.py %t/LeafModule.swiftinterface
4343
// RUN: rm %t/TestModule.swiftmodule
44-
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -I %t -module-cache-path %t/modulecache -emit-module -o %t/TestModule.swiftmodule -module-name TestModule %s 2>&1 | sed '/WARNING: TRYING Scope exclusively/d' >%t/warn.txt
44+
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -I %t -module-cache-path %t/modulecache -emit-module -o %t/TestModule.swiftmodule -module-name TestModule %s 2>&1 | sed '/WARNING: TRYING Scope exclusively/d' >%t/warn.txt
4545
// RUN: %{python} %S/Inputs/check-is-new.py %t/modulecache/OtherModule-*.swiftmodule %t/modulecache/LeafModule-*.swiftmodule
4646
// "check warn.txt exists and is empty"
4747
// RUN: test -e %t/warn.txt -a ! -s %t/warn.txt
@@ -56,7 +56,7 @@
5656
// RUN: %{python} %S/Inputs/make-old.py %t/LeafModule.swiftinterface
5757
// RUN: %{python} %S/Inputs/check-is-old.py %t/LeafModule.swiftinterface
5858
// RUN: rm %t/TestModule.swiftmodule
59-
// RUN: not %target-swift-frontend -disable-implicit-concurrency-module-import -I %t -module-cache-path %t/modulecache -emit-module -o %t/TestModule.swiftmodule -module-name TestModule %s >%t/err.txt 2>&1
59+
// RUN: not %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -I %t -module-cache-path %t/modulecache -emit-module -o %t/TestModule.swiftmodule -module-name TestModule %s >%t/err.txt 2>&1
6060
// RUN: %{python} %S/Inputs/check-is-old.py %t/modulecache/OtherModule-*.swiftmodule %t/modulecache/LeafModule-*.swiftmodule
6161
// RUN: %FileCheck %s -check-prefix=CHECK-ERROR <%t/err.txt
6262
// CHECK-ERROR: LeafModule.swiftinterface:7:8: error: no such module 'NotAModule'
@@ -69,7 +69,7 @@
6969
//
7070
// RUN: %{python} %S/Inputs/check-is-old.py %t/OtherModule.swiftinterface %t/LeafModule.swiftinterface
7171
// RUN: %{python} %S/Inputs/check-is-old.py %t/modulecache/OtherModule-*.swiftmodule %t/modulecache/LeafModule-*.swiftmodule
72-
// RUN: not %target-swift-frontend -disable-implicit-concurrency-module-import -I %t -module-cache-path %t/modulecache -serialize-diagnostics -serialize-diagnostics-path %t/err.dia -emit-module -o %t/TestModule.swiftmodule -module-name TestModule %s
72+
// RUN: not %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -I %t -module-cache-path %t/modulecache -serialize-diagnostics -serialize-diagnostics-path %t/err.dia -emit-module -o %t/TestModule.swiftmodule -module-name TestModule %s
7373
// RUN: %{python} %S/Inputs/check-is-old.py %t/modulecache/OtherModule-*.swiftmodule %t/modulecache/LeafModule-*.swiftmodule
7474
// RUN: c-index-test -read-diagnostics %t/err.dia 2>&1 | %FileCheck %s -check-prefix=CHECK-ERROR
7575
//
@@ -81,7 +81,7 @@
8181
// RUN: %{python} %S/Inputs/make-old.py %t/LeafModule.swiftinterface
8282
// RUN: %{python} %S/Inputs/check-is-old.py %t/OtherModule.swiftinterface %t/LeafModule.swiftinterface
8383
// RUN: %{python} %S/Inputs/check-is-old.py %t/modulecache/OtherModule-*.swiftmodule %t/modulecache/LeafModule-*.swiftmodule
84-
// RUN: not %target-swift-frontend -disable-implicit-concurrency-module-import -I %t -module-cache-path %t/modulecache -emit-module -o %t/TestModule.swiftmodule -module-name TestModule %s >%t/err-inline.txt 2>&1
84+
// RUN: not %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -I %t -module-cache-path %t/modulecache -emit-module -o %t/TestModule.swiftmodule -module-name TestModule %s >%t/err-inline.txt 2>&1
8585
// RUN: %{python} %S/Inputs/check-is-old.py %t/modulecache/OtherModule-*.swiftmodule %t/modulecache/LeafModule-*.swiftmodule
8686
// RUN: %FileCheck %s -check-prefix=CHECK-ERROR-INLINE <%t/err-inline.txt
8787
// CHECK-ERROR-INLINE: LeafModule.swiftinterface:6:33: error: cannot find 'unresolved' in scope
@@ -94,7 +94,7 @@
9494
//
9595
// RUN: %{python} %S/Inputs/check-is-old.py %t/OtherModule.swiftinterface %t/LeafModule.swiftinterface
9696
// RUN: %{python} %S/Inputs/check-is-old.py %t/modulecache/OtherModule-*.swiftmodule %t/modulecache/LeafModule-*.swiftmodule
97-
// RUN: not %target-swift-frontend -disable-implicit-concurrency-module-import -I %t -module-cache-path %t/modulecache -serialize-diagnostics -serialize-diagnostics-path %t/err-inline.dia -emit-module -o %t/TestModule.swiftmodule -module-name TestModule %s
97+
// RUN: not %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -I %t -module-cache-path %t/modulecache -serialize-diagnostics -serialize-diagnostics-path %t/err-inline.dia -emit-module -o %t/TestModule.swiftmodule -module-name TestModule %s
9898
// RUN: %{python} %S/Inputs/check-is-old.py %t/modulecache/OtherModule-*.swiftmodule %t/modulecache/LeafModule-*.swiftmodule
9999
// RUN: c-index-test -read-diagnostics %t/err-inline.dia 2>&1 | %FileCheck %s -check-prefix=CHECK-ERROR-INLINE
100100

test/ModuleInterface/imports-submodule-order.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -typecheck -emit-module-interface-path - %s -I %S/Inputs/imports-submodule-order/ | %FileCheck %s
2-
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -typecheck -emit-module-interface-path - %s -I %S/Inputs/imports-submodule-order/ -D XY | %FileCheck %s
1+
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -typecheck -emit-module-interface-path - %s -I %S/Inputs/imports-submodule-order/ | %FileCheck %s
2+
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -typecheck -emit-module-interface-path - %s -I %S/Inputs/imports-submodule-order/ -D XY | %FileCheck %s
33

44
#if XY
55
@_exported import X.Submodule

test/ModuleInterface/imports.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// RUN: %empty-directory(%t)
2-
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -emit-module -o %t/empty.swiftmodule %S/../Inputs/empty.swift
3-
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -emit-module -o %t/emptyButWithLibraryEvolution.swiftmodule %S/../Inputs/empty.swift -enable-library-evolution
4-
// RUN: %target-swift-emit-module-interface(%t.swiftinterface) %s %S/Inputs/imports-other.swift -disable-implicit-concurrency-module-import -I %S/Inputs/imports-clang-modules/ -I %t -verify
2+
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -emit-module -o %t/empty.swiftmodule %S/../Inputs/empty.swift
3+
// RUN: %target-swift-frontend -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -emit-module -o %t/emptyButWithLibraryEvolution.swiftmodule %S/../Inputs/empty.swift -enable-library-evolution
4+
// RUN: %target-swift-emit-module-interface(%t.swiftinterface) %s %S/Inputs/imports-other.swift -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -I %S/Inputs/imports-clang-modules/ -I %t -verify
55
// RUN: %target-swift-typecheck-module-from-interface(%t.swiftinterface) -I %S/Inputs/imports-clang-modules/ -I %t
66
// RUN: %FileCheck -implicit-check-not BAD %s < %t.swiftinterface
77

test/Parse/switch.swift

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -335,8 +335,7 @@ func f1(x: String, y: Whichever) {
335335
break
336336
case Whichever.buzz: // expected-error {{type 'Whichever' has no member 'buzz'}}
337337
break
338-
case Whichever.alias: // expected-error {{expression pattern of type 'Whichever' cannot match values of type 'String'}}
339-
// expected-note@-1 {{overloads for '~=' exist with these partially matching parameter lists: (Substring, String)}}
338+
case Whichever.alias: // expected-error {{referencing operator function '~=' on 'RegexComponent' requires that 'Whichever' conform to 'RegexComponent'}}
340339
break
341340
default:
342341
break

0 commit comments

Comments
 (0)