Doug Gregor
2f60d729f0
Add @_neverEmitIntoClient to prohibit SIL serialization for a function
...
Part of the Embedded Swift linkage model, this attribute ensures that
the function it applies to has a strong definition in its owning
module, and that its SIL is never serialized. That way, other modules
will not have access to its definition.
Implements rdar://158364184.
2025-08-17 23:21:57 -07:00
Hamish Knight
396a6a8fe6
Enable InlineArray type sugar
...
Promote it from an experimental feature.
rdar://155607927
2025-08-04 15:16:30 +01:00
Anthony Latsis
5620abbad8
Bridging: Bridge swift::CharSourceRange directly
2025-07-15 21:34:48 +01:00
Anthony Latsis
9001ce4687
Bridging: Bridge swift::SourceRange directly
2025-07-15 21:33:28 +01:00
Anthony Latsis
6eb5d7d857
Bridging: Bridge swift::SourceLoc directly
2025-07-15 21:33:06 +01:00
Anthony Latsis
8cbf5a26e4
Bridging: Bridge swift::DeclBaseName directly
2025-07-10 17:58:13 +01:00
Anthony Latsis
0e0fbc4160
Bridging: Bridge swift::Identifier directly
2025-07-10 17:58:13 +01:00
Pavel Yaskevich
0444d297b6
[AST/Sema] SE-0487: Remove @preEnumExtensibility attribute
2025-07-04 11:06:44 -07:00
Pavel Yaskevich
fe1ae75711
[AST/Sema] SE-0487: Rename @extensible into @nonexhaustive
...
This is an accepted spelling for the attribute. This commit
also renames the feature flag from `ExtensibleAttribute` to
`NonexhaustiveAttribute` to match the spelling of the attribute.
2025-07-03 17:50:05 -07:00
Alexis Laferrière
81a0f98783
Merge pull request #82194 from xymus/cdecl-parser
...
Parser: Accept `@cdecl` with an optional identifier for a custom C name
2025-06-27 15:06:11 -07:00
Anthony Latsis
dd78cd6dbe
ASTBridging: Bridge swift::PlatformKind directly
2025-06-20 16:46:03 +01:00
Anthony Latsis
de46b95e7e
ASTBridging: Bridge swift::GenericTypeParamKind directly
2025-06-20 16:46:03 +01:00
Anthony Latsis
30a8b59c6e
ASTBridging: Bridge swift::TypeAttrKind directly
2025-06-19 18:11:40 +01:00
Anthony Latsis
8501c8776e
ASTBridging: Bridge swift::ExternKind directly
2025-06-19 18:11:40 +01:00
Anthony Latsis
0b0ebfc9fb
ASTBridging: Bridge swift::ExposureKind directly
2025-06-19 18:11:40 +01:00
Anthony Latsis
b2b79f3ad7
ASTBridging: Bridge swift::InlineKind directly
2025-06-19 18:11:40 +01:00
Anthony Latsis
6527be558a
ASTBridging: Bridge swift::NonIsolatedModifier directly
2025-06-19 18:11:40 +01:00
Anthony Latsis
29ef3e300f
ASTBridging: Bridge swift::InheritActorContextModifier directly
2025-06-19 18:11:40 +01:00
Anthony Latsis
68bb4b33f9
ASTBridging: Bridge swift::EffectsKind directly
2025-06-19 18:11:40 +01:00
Anthony Latsis
12de029d97
ASTBridging: Bridge swift::AccessLevel directly
2025-06-19 18:11:40 +01:00
Anthony Latsis
cf09773d66
ASTBridging: Bridge swift::Associativity directly
2025-06-19 18:11:40 +01:00
Anthony Latsis
38360fe625
ASTBridging: Bridge swift::DeclAttrKind directly
2025-06-19 18:11:39 +01:00
Anthony Latsis
722bc0f086
ASTBridging: Bridge swift::DiagID directly
2025-06-19 12:29:27 +01:00
Anthony Latsis
3e9923f0c0
ASTBridging: Bridge swift::AccessorKind directly
2025-06-19 04:26:52 +01:00
Anthony Latsis
b40b192227
ASTBriding: Bridge swift::DiagnosticKind directly
2025-06-16 19:11:35 +01:00
Alexis Laferrière
d9566c6c1e
ASTGen: Accept @cdecl
2025-06-11 12:42:38 -07:00
Meghana Gupta
0dfa1fc312
Update spelling for representing lifetime dependencies to @_lifetime
2025-06-07 12:49:07 -07:00
Allan Shortlidge
453f99e929
ASTGen: Fix 'never mutated' warnings.
2025-06-03 09:44:57 -07:00
Pavel Yaskevich
c246a7a372
[AST/Sema] Hide using declaration behind DefaultIsolationPerFile experimental feature
2025-05-31 10:49:50 -07:00
Pavel Yaskevich
4b5105df5e
[ASTGen] Implement bridging for using declaration
2025-05-30 15:52:09 -07:00
Arnold Schwaighofer
13ff5abdb8
Introduce @specialized attribute
...
Implements SE-0460 -- the non-underscored version of @specialized.
It allows to specify "internal" (not abi affecting) specializations.
rdar://150033316
2025-05-23 13:12:47 -07:00
Pavel Yaskevich
c0aca5384b
[ASTGen] Transform @_inheritActorContext into a custom attribute with an optional modifier
2025-05-14 20:07:59 -07:00
Ben Barham
6667471b3d
Merge pull request #81115 from beccadax/abi-let-you-graduate
...
Finish implementing `@abi` (SE-0476)
2025-05-08 12:52:00 -07:00
Becca Royal-Gordon
01431b87b2
Make @abi non-experimental
...
This includes changing the feature name so that compilers with the experimental feature don’t accidentally pick up content that only works in the final version.
Resolves rdar://150065196.
2025-05-05 13:50:51 -07:00
Michael Gottesman
9d59dbed17
[swift-settings] Now that we aren't using it immediately, remove it from tree.
...
We can always get it back from the git history.
rdar://150695113
2025-05-05 13:39:03 -07:00
Pavel Yaskevich
498430afaf
[AST/Sema] Add @preEnumExtensibility attribute to downgrade warnings for extensible enums
...
Just like `@preconcurrency` for concurrency, this attribute is going
to allow exhaustiveness error downgrades for enums that were retroactively
marked as `@extensible`.
2025-05-02 09:07:22 -07:00
Doug Gregor
235242e8b3
[Diagnostics] Use the swift-syntax formatting for invalid source locations, too
...
The diagnostics formatter from swift-syntax previously only handled
fully-formed diagnostics anchored at a particular syntax node.
Therefore, the compiler would fall back to the existing LLVM-based
diagnostic formatter for diagnostics that had no source location.
Adopt new API in the swift-syntax diagnostics formatter that renders a
diagnostic message without requiring source location information, so
that we consistently use the swift-syntax formatter when it is
selected (which is the default).
2025-04-18 15:36:43 -07:00
Pavel Yaskevich
07ff063ae3
[AST/ASTGen/Sema/Serialization] Remove @execution attribute
...
Complete the transition from `@execution` to `@concurrent` and `nonisolated(nonsending)`
2025-04-11 15:59:25 -07:00
Pavel Yaskevich
54b62ae983
[AST/Parse] Implement nonisolated(nonsending) type modifier
2025-04-11 15:59:25 -07:00
Pavel Yaskevich
b1ffa063b6
[AST/Sema] Intoduce nonisolated(nonsending) as a replacement for @execution(caller)
2025-04-11 15:57:11 -07:00
Pavel Yaskevich
4b8c8e7d72
[AST/Sema] Replace @execution(concurrent) with @concurrent
2025-04-11 12:08:29 -07:00
Pavel Yaskevich
318c4150f3
[AST/Sema] Support for @concurrent attribute in type context
2025-04-11 12:08:29 -07:00
Pavel Yaskevich
2704ab7337
[AST/ASTGen] Introduce @concurrent attribute to replace @execution(concurrent) spelling
2025-04-11 12:08:29 -07:00
Meghana Gupta
ef1e94577f
Revert "Merge pull request #80540 from swiftlang/revert-80452-lifetimeinout"
...
This reverts commit 6eaa07a880 , reversing
changes made to e75ee3f4cf .
2025-04-04 09:50:13 -07:00
Artem Chikin
6eaa07a880
Merge pull request #80540 from swiftlang/revert-80452-lifetimeinout
...
Revert "Add support for inout lifetime dependence"
2025-04-04 09:31:46 -07:00
Pavel Yaskevich
8bf8c24bf9
Merge pull request #80503 from xedin/extensible-attr
...
[AST/Sema] Add `@extensible` attribute on `enum` declarations
2025-04-04 09:17:56 -07:00
Artem Chikin
39e1791b67
Revert "Add support for inout lifetime dependence"
2025-04-04 09:00:09 -07:00
Meghana Gupta
50ea777936
Merge pull request #80452 from meg-gupta/lifetimeinout
...
Add support for inout lifetime dependence
2025-04-04 02:04:53 -07:00
Meghana Gupta
d87a2b2ada
Rename ParsedLifetimeDependenceKind::Scope -> ParsedLifetimeDependenceKind::Borrow
2025-04-03 17:22:13 -07:00
Meghana Gupta
cfacd25df4
Add support for @lifetime(&arg)
2025-04-03 17:22:06 -07:00