Dylan Sturgeon
a1e888785d
Enable indexing for refs to synthesized declarations.
...
Based on feedback in PR https://github.com/swiftlang/swift/pull/69460 , enabling indexing for synthesized decls because they are usable by users and make sense to appear in the indexstore.
Sets `synthesized` on some additional decls:
- derived `hashInto(...)`
- Objc properties and methods derived from Objc protocols
https://github.com/apple/swift/issues/67446
2024-10-28 10:07:27 -07:00
Pavel Yaskevich
83995f2ae0
[Frontend] Don't set "current" compiler version for modules built from swiftinterface
...
If swiftinterface doesn't have `-swift-compiler-version` flag
it means that it was generated with an older version of the
Swift compiler. In such cases it would be incorrect to use
"current" compiler version because the field is intended to
indicate the compiler the swiftinterface was built with.
2024-10-25 17:05:16 -07:00
Pavel Yaskevich
2d8751badf
[Frontend] Always print current compiler version in swiftinterface flags
...
Swiftinterface files are always built with "current" compiler version,
which means that `-swift-compiler-version` has no effect in this context.
2024-10-25 09:53:47 -07:00
Pavel Yaskevich
ab4d8f61eb
[Serialization] Add -swift-compiler-version option to swiftmodules
2024-10-25 09:53:40 -07:00
Allan Shortlidge
f827e7c6d3
Tests: Remove -disable-availability-checking in variadic generics tests.
2024-10-20 15:37:15 -07:00
Allan Shortlidge
6f55aa4170
Tests: Remove -disable-availability-checking in tests that use opaque types.
...
Use the `%target-swift-5.1-abi-triple` substitution to compile the tests for
deployment to the minimum OS versions required for use of opaque types, instead
of disabling availability checking.
2024-10-19 19:39:18 -07:00
Allan Shortlidge
cb578172ea
Tests: Remove -disable-availability-checking in more tests that use concurrency.
...
Use the `%target-swift-5.1-abi-triple` substitution to compile the tests for
deployment to the minimum OS versions required for use of _Concurrency APIs,
instead of disabling availability checking.
2024-10-19 12:35:20 -07:00
Allan Shortlidge
082f0ac4b5
Tests: Use a more natural spelling for ABI triple lit substitutions.
...
`%target-swift-5.8-abi-triple` instead of `%target-swift-abi-5.8-triple`, for
example.
2024-10-18 10:11:36 -07:00
Steven Wu
1eab3b585b
[ModuleCache] Prefer module cache passed on the command-line for checker
...
When setting up the ModuleInterfaceChecker, prefer using the module
cache path from command-line invocation `-module-cache-path` before
falling back to clang options.
Usually those two yield the same result, except for LLDB under direct
cc1 argument mode and explicit module build. Under such mode, the cc1
option for module cache path will be stripped since the output PCMs are
explicit passed as output. When LLDB attempted to do an implicit module
compilation for the swift interface, it will not be able to locate the
module cache path from cc1 arguments. On the other hand, the module
cache option has already be inherited by the sub-instance so it can just
directly be located there.
rdar://137610484
2024-10-16 09:14:47 -07:00
Richard Howell
3aed0950aa
Merge pull request #76964 from rmaz/relres
...
Don't serialize relative resource dir paths in swiftmodules
2024-10-14 07:13:19 -07:00
Konrad `ktoso` Malawski
6f245bb8eb
ABI comments: include stored property names
2024-10-11 08:01:43 +09:00
Richard Howell
7aa94723a6
Don't serialize relative resource dir module paths
2024-10-10 14:36:39 -07:00
Rintaro Ishizaki
ba485d4630
[Test] Disable experimental parser round-trip in '@lifetime' test cases
...
Until SwiftParser supports the syntax
rdar://137636751
2024-10-09 23:52:52 -07:00
Meghana Gupta
4df55a12cd
Merge pull request #76834 from meg-gupta/lifetimedepmultiple
...
Replace dependsOn with @lifetime
2024-10-09 10:17:43 -07:00
Meghana Gupta
008431c3b4
Update some dependsOn tests to @lifetime
2024-10-08 15:12:13 -07:00
Allan Shortlidge
bbe3af61ce
ModuleInterface: Avoid -disable-availability-checking in IsolatedDeinit test.
...
Instead, set the deployment target to the minimum necessary for concurrency
support.
2024-10-08 12:55:37 -07:00
Konrad `ktoso` Malawski
dea3b59331
Merge pull request #76250 from ktoso/wip-experimental-isolated-deinit
2024-10-03 17:19:10 +09:00
nate-chandler
43dce846bf
Merge pull request #76778 from nate-chandler/general-coro/20240930/1
...
[Test] Add asserts req to experimental tests.
2024-09-30 11:06:35 -07:00
Richard Howell
c9b0a2a43f
Merge pull request #76620 from rmaz/sdkprefix
...
Do not prefix relative SDK paths twice
2024-09-30 07:38:44 -07:00
Nate Chandler
6be4090e71
[Test] Add asserts req to experimental tests.
...
The CoroutineAccessors experimental feature requires asserts.
2024-09-30 07:09:49 -07:00
Konrad `ktoso` Malawski
45b97f146b
Merge branch 'main' into wip-experimental-isolated-deinit
2024-09-30 13:47:39 +09:00
Richard Howell
a04ddefb10
Do not prefix relative SDK paths twice
2024-09-27 14:28:06 -07:00
Nate Chandler
091368ba21
[CoroutineAccessors] Added read.
...
The name is a placeholder for the mutating single-yield coroutine
accessor.
2024-09-26 18:10:39 -07:00
Nate Chandler
98a2e6a7df
[CoroutineAccessors] Added modify.
...
The name is a placeholder for the mutating single-yield coroutine
accessor.
2024-09-26 18:10:39 -07:00
Doug Gregor
0aff85ced7
Emit mangled names for public symbols into the .swiftinterface
...
When the frontend option `-abi-comments-in-module-interface` is provided
during interface printing, the printed interface will contain
additional comments that provide the mangled names for public symbols.
This is an experiment in seeing how much information we can
meaningfully extract from a printed Swift interface for the purpose of
bridging with other languages.
2024-09-25 15:49:34 -07:00
Hamish Knight
8ba6a2ca1c
Merge pull request #76640 from hamishknight/driver-parity
...
[test] Update tests for parity with the new driver
2024-09-24 13:46:38 +01:00
Allan Shortlidge
0fb36a5f39
AST: Make $SpecializeAttributeWithAvailability a baseline feature.
...
It has been available since at least Swift 5.8.
2024-09-23 21:48:09 -07:00
Hamish Knight
8e0407b8c1
[test] Add SWIFT_USE_OLD_DRIVER=1 to some tests
...
The behavior of these tests varies depending on
whether the new or old driver is being used, force
the old driver for now.
2024-09-22 23:10:40 +01:00
Hamish Knight
0869a3abd9
[test] Add -no-emit-module-separately to a couple of tests
...
A couple of tests are expecting merge-modules behaviour,
add `-no-emit-module-separately` in those cases to
ensure that merge modules is used in both the old
and new driver.
2024-09-22 21:15:45 +01:00
Konrad `ktoso` Malawski
d89347bed0
Merge branch 'main' into wip-experimental-isolated-deinit
2024-09-20 18:34:45 +09:00
Konrad `ktoso` Malawski
a6bc0e6759
temporary -experimental flag for IsolatedDeinit
2024-09-18 12:52:37 +09:00
Konrad `ktoso` Malawski
7d1ce789ad
Revert "Revert "Isolated synchronous deinit""
2024-09-17 17:35:38 +09:00
Meghana Gupta
0c3d10c8fa
[NFC] Fix indentation on ModuleInterface/nonescapable_types.swift
2024-09-16 14:08:19 -07:00
Meghana Gupta
58c6a2fb31
Merge pull request #76455 from meg-gupta/enablestdlib
...
Enable NonEscapableTypes in standard library and make the feature suppressible
2024-09-16 11:52:41 -07:00
Meghana Gupta
68bfc0d3b4
Make NonEscapableTypes as a suppressible experimental feature
2024-09-13 13:13:17 -07:00
elsh
60f1ea4f85
Revert "Revert "Do not print package-name in non-package interface by default.""
...
This reverts commit 4b8e76fbeb .
2024-09-13 08:20:50 -07:00
Artem Chikin
1ce178bc11
Merge pull request #76372 from artemcm/PrebuiltModulesEnvVar
...
[Prebuilt Module Cache] Add an environment variable overload to specify location of the prebuilt module cache
2024-09-11 13:07:53 -07:00
Artem Chikin
12b7df87ee
[Prebuilt Module Cache] Add an environment variable overload to specify location of the prebuilt module cache
...
Useful for allowing e.g. CI systems to share this parameter without needing to plumb through a new compiler flag everywhere
Resolves rdar://135033114
2024-09-11 09:36:45 -07:00
Alex Hoppen
cd1f02d314
Merge pull request #76330 from swiftlang/value-generics-no-parser-round-trip
2024-09-08 00:16:40 -07:00
Ellie Shin
5f41d084c7
Merge pull request #76315 from swiftlang/elsh/check-interface-srckind
...
[PackageInterface] Fix isInterfacePackageEffectivelyPublic.
2024-09-07 22:06:37 -07:00
Alex Hoppen
3e645368cc
[test] Disable experimental parser round trip in ModuleInterface/value_generics.swift
2024-09-07 13:11:04 -07:00
elsh
bd9272c695
[PackageInterface] Fix isInterfacePackageEffectivelyPublic.
...
ValueDecl::isInterfacePackageEffectivelyPublic is used to check if a package decl in
interface file can be skipped for typecheck; if the decl is inlinable and in public or
private interface, it should be allowed to skip. This PR adds a missing check which
looks up the Interface source kind.
Resolves rdar://135388095
2024-09-07 08:49:23 -07:00
Alex Hoppen
702474fedf
Merge pull request #76312 from ahoppen/disable-parser-round-trip-value-generics
...
[test] Add `-disable-experimental-parser-round-trip` to value generic tests
2024-09-06 13:43:34 -07:00
Doug Gregor
cc98822ada
Merge pull request #76314 from DougGregor/postfix-if-strip-member-expressions
...
Ensure that #if stripping for postfix expressions works in interface generation
2024-09-06 13:24:59 -07:00
Doug Gregor
08eefcbbcc
Ensure that #if stripping for postfix expressions works in interface generation
...
Test case from rdar://117491193
2024-09-06 09:47:35 -07:00
Xi Ge
f1d2da16dd
Merge pull request #76304 from swiftlang/revert-76244-elsh/do-not-print-package-name
...
Revert "Do not print package-name in non-package interface by default."
2024-09-06 09:34:16 -07:00
Alex Hoppen
50a892425d
[test] Add -disable-experimental-parser-round-trip to value generic tests
...
Parsing of integer literals as generic arguments isn’t implemented in SwiftParser yet, blocking swift-syntax PR testing.
2024-09-06 08:16:23 -07:00
Allan Shortlidge
85068f0d4d
Merge pull request #76300 from tshortli/module-interface-patterns-with-opaque-results
...
ModuleInterface: Print patterns with opaque result types using `some` keyword
2024-09-05 22:45:37 -07:00
Xi Ge
4b8e76fbeb
Revert "Do not print package-name in non-package interface by default."
2024-09-05 21:36:32 -07:00
Alexis Laferrière
d71bd2df00
Merge pull request #76267 from xymus/warn-on-ioi-clang-targets
...
Sema: Warn on all non-resilient uses of `@_implementationOnly import`, even for clang targets
2024-09-05 20:01:18 -07:00