Skip to content

Conversation

artemcm
Copy link
Contributor

@artemcm artemcm commented Sep 23, 2024

  • The driver now holds a reference to the 'swiftScanLibInstance' which is shared with the 'interModuleDependencyOracle', but is also used for target info and supported compiler feature queries. This means a single SwiftScan instance is shared across all uses in a given driver instance.
  • Allow SwiftScan to be instantiated without a path to an external 'libSwiftScan.dylib', which will cause it to 'dlopen' with a NULL argument, and expect the scanner symbols to be found in the image that the driver code is a part of. This is useful for when compiler-based tooling (SourceKit) links the driver directly and uses its C API.

Added a deprecation for the prior version of verifyOrCreateScannerInstance.

…the scanning instance use in the driver.

- The driver now holds a reference to the 'swiftScanLibInstance' which is shared with the 'interModuleDependencyOracle', but is also used for target info and supported compiler feature queries. This means a single SwiftScan instance is shared across all uses in a given driver instance.
- Allow SwiftScan to be instantiated *without* a path to an external 'libSwiftScan.dylib', which will cause it to 'dlopen' with a NULL argument, and expect the scanner symbols to be found in the image that the driver code is a part of. This is useful for when compiler-based tooling (SourceKit) links the driver directly and uses its C API.
@artemcm
Copy link
Contributor Author

artemcm commented Sep 23, 2024

@swift-ci test

@artemcm artemcm merged commit 2a49cfe into swiftlang:main Oct 7, 2024
3 checks passed
@artemcm artemcm deleted the AllowInProcessDriverScanV2 branch October 7, 2024 16:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants