Skip to content

Commit 90fa6dd

Browse files
committed
[Immediate]: Workaround for loading Foundation in immediate mode
rdar://94645534
1 parent d04675a commit 90fa6dd

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

lib/Immediate/Immediate.cpp

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,19 @@ bool swift::immediate::autolinkImportedModules(ModuleDecl *M,
201201

202202
M->collectLinkLibraries(addLinkLibrary);
203203

204+
// Workaround for rdar://94645534
205+
if (Target.isMacOSX() && Target.getOSMajorVersion() < 13) {
206+
bool linksFoundation = std::any_of(AllLinkLibraries.begin(),
207+
AllLinkLibraries.end(), [](auto &Lib) {
208+
return Lib.getName() == "Foundation";
209+
});
210+
211+
if (linksFoundation) {
212+
AllLinkLibraries.push_back(LinkLibrary("libswiftFoundation.dylib",
213+
LibraryKind::Library));
214+
}
215+
}
216+
204217
tryLoadLibraries(AllLinkLibraries, M->getASTContext().SearchPathOpts,
205218
M->getASTContext().Diags);
206219
return false;

0 commit comments

Comments
 (0)