Skip to content

Commit c3a421e

Browse files
committed
[Dependency Scanning] Build libSwiftScan with Swift Modules required for parsing regex
Otherwise scanning actions which encounter regex literals will fail. Resolve rdar://108321860
1 parent 6aa0d5b commit c3a421e

File tree

3 files changed

+7
-3
lines changed

3 files changed

+7
-3
lines changed

lib/DependencyScan/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,5 @@ target_link_libraries(swiftDependencyScan INTERFACE
1111

1212
target_link_libraries(swiftDependencyScan PRIVATE
1313
swiftClangImporter
14-
swiftFrontend)
14+
swiftFrontend
15+
swiftCompilerModules)

tools/libSwiftScan/CMakeLists.txt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,7 @@ target_link_libraries(libSwiftScan PRIVATE
2222
swiftDependencyScan
2323
swiftDriverTool
2424
swiftStaticMirror
25-
swiftRemoteInspection
26-
swiftCompilerStub)
25+
swiftRemoteInspection)
2726

2827
set_target_properties(libSwiftScan
2928
PROPERTIES

tools/libSwiftScan/libSwiftScan.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
//===----------------------------------------------------------------------===//
1616

1717
#include "swift/Basic/LLVMInitialize.h"
18+
#include "swift/Basic/InitializeSwiftModules.h"
1819
#include "swift/DriverTool/DriverTool.h"
1920
#include "swift/DependencyScan/DependencyScanImpl.h"
2021
#include "swift/DependencyScan/DependencyScanningTool.h"
@@ -114,6 +115,9 @@ void swiftscan_scanner_cache_reset(swiftscan_scanner_t scanner) {
114115

115116
swiftscan_scanner_t swiftscan_scanner_create(void) {
116117
INITIALIZE_LLVM();
118+
// We must initialize the swift modules responsible for parsing functionality,
119+
// such as parsing regex.
120+
initializeSwiftParseModules();
117121
return wrap(new DependencyScanningTool());
118122
}
119123

0 commit comments

Comments
 (0)