From 78852338de821c56469e1f7d6e850561e77b8ba4 Mon Sep 17 00:00:00 2001 From: Artem Chikin Date: Fri, 5 Apr 2024 11:25:47 -0700 Subject: [PATCH] Revert "On 'canImport' of Clang submodules of modules with an umbrella header, attempt to infer the submodule" --- lib/ClangImporter/ClangImporter.cpp | 2 +- .../Headers/InferredClangModule.h | 1 - .../Headers/WithInferredClangModule.h | 2 -- .../Modules/module.modulemap | 7 ------- .../can_import_inferred_submodule.swift | 11 ----------- 5 files changed, 1 insertion(+), 22 deletions(-) delete mode 100644 test/ScanDependencies/Inputs/Frameworks/WithInferredClangModule.framework/Headers/InferredClangModule.h delete mode 100644 test/ScanDependencies/Inputs/Frameworks/WithInferredClangModule.framework/Headers/WithInferredClangModule.h delete mode 100644 test/ScanDependencies/Inputs/Frameworks/WithInferredClangModule.framework/Modules/module.modulemap delete mode 100644 test/ScanDependencies/can_import_inferred_submodule.swift diff --git a/lib/ClangImporter/ClangImporter.cpp b/lib/ClangImporter/ClangImporter.cpp index 6644b3d7871b5..24c570b8a0f1b 100644 --- a/lib/ClangImporter/ClangImporter.cpp +++ b/lib/ClangImporter/ClangImporter.cpp @@ -2083,7 +2083,7 @@ bool ClangImporter::canImportModule(ImportPath::Module modulePath, if (modulePath.hasSubmodule()) { for (auto &component : modulePath.getSubmodulePath()) { - clangModule = clangModule->findOrInferSubmodule(component.Item.str()); + clangModule = clangModule->findSubmodule(component.Item.str()); // Special case: a submodule named "Foo.Private" can be moved to a // top-level module named "Foo_Private". Clang has special support for diff --git a/test/ScanDependencies/Inputs/Frameworks/WithInferredClangModule.framework/Headers/InferredClangModule.h b/test/ScanDependencies/Inputs/Frameworks/WithInferredClangModule.framework/Headers/InferredClangModule.h deleted file mode 100644 index 706a24bc209e3..0000000000000 --- a/test/ScanDependencies/Inputs/Frameworks/WithInferredClangModule.framework/Headers/InferredClangModule.h +++ /dev/null @@ -1 +0,0 @@ -void funcInferred(void); diff --git a/test/ScanDependencies/Inputs/Frameworks/WithInferredClangModule.framework/Headers/WithInferredClangModule.h b/test/ScanDependencies/Inputs/Frameworks/WithInferredClangModule.framework/Headers/WithInferredClangModule.h deleted file mode 100644 index 76d0d54ffd28a..0000000000000 --- a/test/ScanDependencies/Inputs/Frameworks/WithInferredClangModule.framework/Headers/WithInferredClangModule.h +++ /dev/null @@ -1,2 +0,0 @@ -#import -void funcWith(void); diff --git a/test/ScanDependencies/Inputs/Frameworks/WithInferredClangModule.framework/Modules/module.modulemap b/test/ScanDependencies/Inputs/Frameworks/WithInferredClangModule.framework/Modules/module.modulemap deleted file mode 100644 index 12688d344b4ec..0000000000000 --- a/test/ScanDependencies/Inputs/Frameworks/WithInferredClangModule.framework/Modules/module.modulemap +++ /dev/null @@ -1,7 +0,0 @@ -framework module WithInferredClangModule [system] { - header "WithInferredClangModule.h" - umbrella "Headers" - - export * - explicit module * { export * } -} \ No newline at end of file diff --git a/test/ScanDependencies/can_import_inferred_submodule.swift b/test/ScanDependencies/can_import_inferred_submodule.swift deleted file mode 100644 index 94e2bee1394da..0000000000000 --- a/test/ScanDependencies/can_import_inferred_submodule.swift +++ /dev/null @@ -1,11 +0,0 @@ -// REQUIRES: OS=macosx -// RUN: %empty-directory(%t) -// RUN: %target-swift-frontend -scan-dependencies %s -o %t/deps.json -disable-implicit-concurrency-module-import -disable-implicit-string-processing-module-import -F %S/Inputs/Frameworks -// RUN: %validate-json %t/deps.json | %FileCheck %s - -#if canImport(WithInferredClangModule.InferredClangModule) -import ScannerTestKit -#endif - -// Ensure that the 'WithInferredClangModule.InferredClangModule' can be imported -// CHECK: "swift": "ScannerTestKit"