Skip to content

Commit 0f00ea1

Browse files
authored
Merge pull request #34574 from apple/revert-34545-FixPlaceholderOverlayDeps
Revert "[Dependency Scanner] Add missing clang overlay dependencies for placeholder modules"
2 parents 0092608 + c1b5b4a commit 0f00ea1

File tree

6 files changed

+73
-133
lines changed

6 files changed

+73
-133
lines changed

lib/FrontendTool/ScanDependencies.cpp

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -161,15 +161,15 @@ static std::vector<ModuleDependencyID> resolveDirectDependencies(
161161
auto isSwift = knownDependencies.isSwiftTextualModule();
162162

163163
// Find the dependencies of every module this module directly depends on.
164-
std::set<ModuleDependencyID> result;
164+
std::vector<ModuleDependencyID> result;
165165
for (auto dependsOn : knownDependencies.getModuleDependencies()) {
166166
// Figure out what kind of module we need.
167167
bool onlyClangModule = !isSwift || module.first == dependsOn;
168168

169169
// Retrieve the dependencies for this module.
170170
if (auto found = ctx.getModuleDependencies(
171171
dependsOn, onlyClangModule, cache, ASTDelegate)) {
172-
result.insert({dependsOn, found->getKind()});
172+
result.push_back({dependsOn, found->getKind()});
173173
}
174174
}
175175

@@ -215,15 +215,13 @@ static std::vector<ModuleDependencyID> resolveDirectDependencies(
215215
// This Clang module may have the same name as the Swift module we are resolving, so we
216216
// need to make sure we don't add a dependency from a Swift module to itself.
217217
if ((found->getKind() == ModuleDependenciesKind::SwiftTextual ||
218-
found->getKind() == ModuleDependenciesKind::SwiftBinary ||
219-
found->getKind() == ModuleDependenciesKind::SwiftPlaceholder) &&
220-
clangDep != module.first) {
221-
result.insert({clangDep, found->getKind()});
222-
}
218+
found->getKind() == ModuleDependenciesKind::SwiftBinary) &&
219+
clangDep != module.first)
220+
result.push_back({clangDep, found->getKind()});
223221
}
224222
}
225223
}
226-
return std::vector<ModuleDependencyID>(result.begin(), result.end());
224+
return result;
227225
}
228226

229227
static void discoverCrosssImportOverlayDependencies(

test/ScanDependencies/can_import_placeholder.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,6 @@ import SomeExternalModule
3030

3131
// CHECK: directDependencies
3232
// CHECK-NEXT: {
33-
// CHECK-NEXT: "swift": "F"
34-
// CHECK-NEXT: }
35-
// CHECK-NEXT: {
3633
// CHECK-NEXT: "swiftPlaceholder": "SomeExternalModule"
3734
// CHECK-NEXT: }
3835
// CHECK-NEXT: {
@@ -41,5 +38,8 @@ import SomeExternalModule
4138
// CHECK-NEXT: {
4239
// CHECK-NEXT: "swift": "SwiftOnoneSupport"
4340
// CHECK-NEXT: }
41+
// CHECK-NEXT: {
42+
// CHECK-NEXT: "swift": "F"
43+
// CHECK-NEXT: }
4444
// CHECK-NEXT: ],
4545

test/ScanDependencies/module_deps.swift

Lines changed: 58 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -34,35 +34,35 @@ import SubE
3434
// CHECK-LABEL: "modulePath": "deps.swiftmodule",
3535
// CHECK-NEXT: sourceFiles
3636
// CHECK-NEXT: module_deps.swift
37-
// CHECK-NEXT: ],
38-
// CHECK-NEXT: "directDependencies": [
39-
// CHECK-NEXT: {
40-
// CHECK-NEXT: "swift": "A"
41-
// CHECK-NEXT: },
42-
// CHECK-NEXT: {
43-
// CHECK-NEXT: "clang": "C"
44-
// CHECK-NEXT: },
45-
// CHECK-NEXT: {
46-
// CHECK-NEXT: "swift": "E"
47-
// CHECK-NEXT: },
48-
// CHECK-NEXT: {
49-
// CHECK-NEXT: "swift": "F"
50-
// CHECK-NEXT: },
51-
// CHECK-NEXT: {
52-
// CHECK-NEXT: "swift": "G"
53-
// CHECK-NEXT: },
54-
// CHECK-NEXT: {
55-
// CHECK-NEXT: "swift": "SubE"
56-
// CHECK-NEXT: },
57-
// CHECK-NEXT: {
58-
// CHECK-NEXT: "swift": "Swift"
59-
// CHECK-NEXT: },
60-
// CHECK-NEXT: {
61-
// CHECK-NEXT: "swift": "SwiftOnoneSupport"
62-
// CHECK-NEXT: },
63-
// CHECK-NEXT: {
64-
// CHECK-NEXT: "swift": "_cross_import_E"
65-
// CHECK-NEXT: }
37+
38+
// CHECK: directDependencies
39+
// CHECK-NEXT: {
40+
// CHECK-NEXT: "clang": "C"
41+
// CHECK-NEXT: }
42+
// CHECK-NEXT: {
43+
// CHECK-NEXT: "swift": "E"
44+
// CHECK-NEXT: }
45+
// CHECK-NEXT: {
46+
// CHECK-NEXT: "swift": "G"
47+
// CHECK-NEXT: }
48+
// CHECK-NEXT: {
49+
// CHECK-NEXT: "swift": "SubE"
50+
// CHECK-NEXT: }
51+
// CHECK-NEXT: {
52+
// CHECK-NEXT: "swift": "Swift"
53+
// CHECK-NEXT: }
54+
// CHECK-NEXT: {
55+
// CHECK-NEXT: "swift": "SwiftOnoneSupport"
56+
// CHECK-NEXT: }
57+
// CHECK-NEXT: {
58+
// CHECK-NEXT: "swift": "_cross_import_E"
59+
// CHECK-NEXT: }
60+
// CHECK-NEXT: {
61+
// CHECK-NEXT: "swift": "F"
62+
// CHECK-NEXT: }
63+
// CHECK-NEXT: {
64+
// CHECK-NEXT: "swift": "A"
65+
// CHECK-NEXT: }
6666
// CHECK-NEXT: ],
6767

6868
// CHECK: "extraPcmArgs": [
@@ -83,17 +83,6 @@ import SubE
8383
// CHECK-NEXT: "F"
8484
// CHECK-NEXT: ]
8585

86-
/// --------Swift module A
87-
// CHECK-LABEL: "modulePath": "A.swiftmodule",
88-
89-
// CHECK: directDependencies
90-
// CHECK-NEXT: {
91-
// CHECK-NEXT: "clang": "A"
92-
// CHECK-NEXT: }
93-
// CHECK-NEXT: {
94-
// CHECK-NEXT: "swift": "Swift"
95-
// CHECK-NEXT: },
96-
9786
/// --------Clang module C
9887
// CHECK-LABEL: "modulePath": "C.pcm",
9988

@@ -131,30 +120,14 @@ import SubE
131120
// CHECK: "moduleInterfacePath"
132121
// CHECK-SAME: E.swiftinterface
133122

134-
/// --------Swift module F
135-
// CHECK: "modulePath": "F.swiftmodule",
136-
// CHECK-NEXT: "sourceFiles": [
137-
// CHECK-NEXT: ],
138-
// CHECK-NEXT: "directDependencies": [
139-
// CHECK-NEXT: {
140-
// CHECK-NEXT: "clang": "F"
141-
// CHECK-NEXT: },
142-
// CHECK-NEXT: {
143-
// CHECK-NEXT: "swift": "Swift"
144-
// CHECK-NEXT: },
145-
// CHECK-NEXT: {
146-
// CHECK-NEXT: "swift": "SwiftOnoneSupport"
147-
// CHECK-NEXT: }
148-
// CHECK-NEXT: ],
149-
150123
/// --------Swift module G
151124
// CHECK-LABEL: "modulePath": "G.swiftmodule"
152125
// CHECK: "directDependencies"
153126
// CHECK-NEXT: {
154-
// CHECK-NEXT: "clang": "G"
127+
// CHECK-NEXT: "swift": "Swift"
155128
// CHECK-NEXT: },
156129
// CHECK-NEXT: {
157-
// CHECK-NEXT: "swift": "Swift"
130+
// CHECK-NEXT: "clang": "G"
158131
// CHECK-NEXT: },
159132
// CHECK-NEXT: {
160133
// CHECK-NEXT: "swift": "SwiftOnoneSupport"
@@ -183,6 +156,33 @@ import SubE
183156
// CHECK-NEXT: {
184157
// CHECK-NEXT: "clang": "SwiftShims"
185158

159+
/// --------Swift module F
160+
// CHECK: "modulePath": "F.swiftmodule",
161+
// CHECK-NEXT: "sourceFiles": [
162+
// CHECK-NEXT: ],
163+
// CHECK-NEXT: "directDependencies": [
164+
// CHECK-NEXT: {
165+
// CHECK-NEXT: "swift": "Swift"
166+
// CHECK-NEXT: },
167+
// CHECK-NEXT: {
168+
// CHECK-NEXT: "clang": "F"
169+
// CHECK-NEXT: },
170+
// CHECK-NEXT: {
171+
// CHECK-NEXT: "swift": "SwiftOnoneSupport"
172+
// CHECK-NEXT: }
173+
// CHECK-NEXT: ],
174+
175+
/// --------Swift module A
176+
// CHECK-LABEL: "modulePath": "A.swiftmodule",
177+
178+
// CHECK: directDependencies
179+
// CHECK-NEXT: {
180+
// CHECK-NEXT: "swift": "Swift"
181+
// CHECK-NEXT: },
182+
// CHECK-NEXT: {
183+
// CHECK-NEXT: "clang": "A"
184+
// CHECK-NEXT: }
185+
186186
/// --------Clang module B
187187
// CHECK-LABEL: "modulePath": "B.pcm"
188188

test/ScanDependencies/module_deps_cross_import_overlay.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,6 @@ import SubEWrapper
1616
// CHECK-NEXT: "swift": "EWrapper"
1717
// CHECK-NEXT: },
1818
// CHECK-NEXT: {
19-
// CHECK-NEXT: "swift": "F"
20-
// CHECK-NEXT: },
21-
// CHECK-NEXT: {
2219
// CHECK-NEXT: "swift": "SubEWrapper"
2320
// CHECK-NEXT: },
2421
// CHECK-NEXT: {
@@ -29,5 +26,8 @@ import SubEWrapper
2926
// CHECK-NEXT: },
3027
// CHECK-NEXT: {
3128
// CHECK-NEXT: "swift": "_cross_import_E"
29+
// CHECK-NEXT: },
30+
// CHECK-NEXT: {
31+
// CHECK-NEXT: "swift": "F"
3232
// CHECK-NEXT: }
3333
// CHECK-NEXT: ],

test/ScanDependencies/module_deps_external.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,6 @@ import SomeExternalModule
4040

4141
// CHECK: directDependencies
4242
// CHECK-NEXT: {
43-
// CHECK-NEXT: "swift": "F"
44-
// CHECK-NEXT: }
45-
// CHECK-NEXT: {
4643
// CHECK-NEXT: "swiftPlaceholder": "SomeExternalModule"
4744
// CHECK-NEXT: }
4845
// CHECK-NEXT: {
@@ -51,6 +48,9 @@ import SomeExternalModule
5148
// CHECK-NEXT: {
5249
// CHECK-NEXT: "swift": "SwiftOnoneSupport"
5350
// CHECK-NEXT: }
51+
// CHECK-NEXT: {
52+
// CHECK-NEXT: "swift": "F"
53+
// CHECK-NEXT: }
5454
// CHECK-NEXT: ],
5555

5656
// CHECK: "extraPcmArgs": [

test/ScanDependencies/placholder_overlay_deps.swift

Lines changed: 0 additions & 58 deletions
This file was deleted.

0 commit comments

Comments
 (0)