Alexis Laferrière
405a84e7d6
Merge pull request #80744 from xymus/cdecl-global-function-checking
...
Sema: Intro experimental @cdecl and basic C compatibility check
2025-04-17 15:31:30 -07:00
Guillaume Lessard
a5c561fb13
Merge pull request #80831 from glessard/rdar149227278-nonescapable-mutating-accessor
...
[LifetimeDependenceMutableAccessors] defensive feature flag
2025-04-17 09:27:23 -07:00
Alexis Laferrière
a6beaf8deb
Merge branch 'main' into cdecl-global-function-checking
2025-04-16 11:19:37 -07:00
Guillaume Lessard
e2ad40debf
[LifetimeDependenceMutableAccessors] add a long feature flag
2025-04-15 10:40:22 -07:00
Alejandro Alonso
a884e5153d
Don't ask for the typechecked body in featureset
2025-04-14 15:33:08 -07:00
Alejandro Alonso
42b416171a
Add feature for value generic namelookup
2025-04-14 15:33:05 -07:00
Pavel Yaskevich
734b1f1705
[Frontend] Add a feature to guard use of @concurrent and nonisolated(nonsending) in swift interface files
2025-04-11 15:59:25 -07:00
Pavel Yaskevich
f1b3c7b604
[AST] Remove ExecutionAttribute experimental feature
...
SE-0461 has been accepted and `@concurrent` and `nonisolated(nonsending)`
can be make generally available now.
2025-04-11 15:59:25 -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
2704ab7337
[AST/ASTGen] Introduce @concurrent attribute to replace @execution(concurrent) spelling
2025-04-11 12:08:29 -07:00
Alexis Laferrière
02b5998536
Parser: Intro @cdecl attribute and gate it behind feature flag CDecl
2025-04-11 11:34:39 -07:00
fahadnayyar
0ae0528434
[cxx-interop] convert CXXForeignReferenceTypeInitializers into SuppressCXXForeignReferenceTypeInitializers to be an opt-out flag
...
Turning the feature "ctor of C++ foreign reference types is callable as Swift Initializers" on by default.
rdar://148285972
2025-04-10 00:37:50 -07:00
Allan Shortlidge
10c910ed83
ModuleInterface: Guard declarations that use the $CustomAvailability feature.
2025-04-08 08:53:44 -07:00
Michael Gottesman
77a86a525b
Merge pull request #79891 from gottesmm/pr-9df6772bb44656cbd85cad72ee5c3637caab8956
...
Make Feature a struct enum so we can put methods on it.
2025-04-07 10:32:23 -07:00
Michael Gottesman
3ff9463957
Make Feature a struct enum so we can put methods on it.
...
Just noticed this as I was looking at making other changes.
2025-04-05 10:08:29 +01:00
Meghana Gupta
5fac8a4962
Fix printing @lifetime(&arg) for accessors in swiftinterface files
2025-04-04 09:50:37 -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
493f0b782e
Introduce InoutLifetimeDependence feature
2025-04-03 17:32:09 -07:00
Pavel Yaskevich
bf19481ab6
[Frontend/Serialization] Remove ExtensibleEnums experimental flag
...
For now the semantics provided by `@extensible` keyword on per-enum
basis. We might return this as an upcoming feature in the future with
a way to opt-out.
2025-04-03 16:30:23 -07:00
fahadnayyar
9694cc8d70
[cxx-interop] Import default public ctor of C++ foreign ref types as Swift Initializer ( #79986 )
...
Building on top of PR #79288 , this update synthesizes a static factory method using the default new operator, with a call to the default constructor expression for C++ foreign reference types, and imports them as Swift initializers.
rdar://147529406
2025-03-31 20:33:53 -07:00
Allan Shortlidge
e5d0cd4e51
Merge pull request #80322 from tshortli/allow-swift-runtime-symbol-declarations
2025-03-30 16:14:40 -07:00
Doug Gregor
2f5c6d21bb
Collapse experimental feature StrictSendableMetatypes into IsolatedConformances
2025-03-28 16:55:33 -07:00
Allan Shortlidge
82cd87187f
AST: Introduce the AllowRuntimeSymbolDeclarations experimental feature.
...
This feature only exists as a mechanism to suppress the warning introduced in
https://github.com/swiftlang/swift/pull/75378 . The RegexParser module, which is
effectively part of the standard library, declares a Swift runtime symbol and
as a result every build of the compiler and stdlib produces warnings which
there are no plans to address. Warnings that are not going to be addressed need
some way of being suppressed, and an experimental features seems like a
reasonable mechanism for this one.
2025-03-28 12:32:47 -07:00
Anthony Latsis
631a04e56c
Merge pull request #80159 from AnthonyLatsis/danaus-plexippus-5
...
Sema: Extend adoption mode for `AsyncCallerExecution` to storage declarations
2025-03-26 04:40:58 +00:00
Anthony Latsis
8ad2e02596
Sema: Allow @execution on storage declarations
2025-03-25 02:07:04 +00:00
Anthony Latsis
d73402af25
AST: Restrict @execution to func and init declarations
2025-03-25 02:07:04 +00:00
Kuba Mracek
f402eb623c
[Compile Time Values] Add parsing of @constInitialized attribute under CompileTimeValues experimental feature
2025-03-24 09:31:57 -07:00
Pavel Yaskevich
e850f1708f
[Concurrency] SE-0466: Replace UnspecifiedMeansMainActorIsolated flag with -default-isolation
2025-03-23 22:04:39 -07:00
Hamish Knight
f8ab391737
Introduce type sugar for InlineArray ( #80087 )
...
* [CS] Decline to handle InlineArray in shrink
Previously we would try the contextual type `(<int>, <element>)`,
which is wrong. Given we want to eliminate shrink, let's just bail.
* [Sema] Sink `ValueMatchVisitor` into `applyUnboundGenericArguments`
Make sure it's called for sugar code paths too. Also let's just always
run it since it should be a pretty cheap check.
* [Sema] Diagnose passing integer to non-integer type parameter
This was previously missed, though would have been diagnosed later
as a requirement failure.
* [Parse] Split up `canParseType`
While here, address the FIXME in `canParseTypeSimpleOrComposition`
and only check to see if we can parse a type-simple, including
`each`, `some`, and `any` for better recovery.
* Introduce type sugar for InlineArray
Parse e.g `[3 x Int]` as type sugar for InlineArray. Gated behind
an experimental feature flag for now.
2025-03-23 15:31:37 -07:00
Doug Gregor
13f1bea2d3
Merge pull request #80209 from DougGregor/infer-isolated-conformances
...
Implement experimental feature InferIsolatedConformances
2025-03-22 17:53:20 -07:00
Doug Gregor
083194923c
Implement experimental feature InferIsolatedConformances
...
Introduce the experimental feature InferIsolatedConformances to align
with the upcoming feature proposed in SE-0470. This is a slight
generalization of the main-actor-specific inference that was already
in place for the default-main-actor mode from SE-0466. Note that, as
specified in SE-0470, InferIsolatedConformances is implied by the
default-main-actor mode.
2025-03-21 11:41:46 -07:00
Holly Borla
be670da373
Merge pull request #79980 from hborla/closure-body-macro
...
[Macros] Implement support for function body macros on closures.
2025-03-21 06:19:36 -07:00
Anthony Latsis
3d3b1ca50a
[NFC] AST: Turn getParameterList into a method on ValueDecl
2025-03-19 18:49:15 +00:00
Amritpan Kaur
98cd675eb9
Guard feature behind experimental flag.
2025-03-19 10:54:09 -07:00
Holly Borla
8ec70e2559
[Macros] Gate closure body macros behind an experimental feature flag.
2025-03-18 20:50:47 -07:00
Pavel Yaskevich
bb6326bb32
[AST] Adjust usesFeatureExecutionAttribute to cover accessors
2025-03-14 17:29:48 -07:00
Konrad `ktoso` Malawski
8c4dea9802
Revert "[concurrency] Add support for HopToMainActorIfNeededThunk." ( #79938 )
...
* Revert "[concurrency] Add support for HopToMainActorIfNeededThunk."
This reverts commit 0e0665bfbd .
* remove some last bits of 0e0665b
2025-03-13 06:48:03 +09:00
Tony Allevato
7797664bb4
Add RawIdentifiers as a language feature.
...
This lets clients test `#if hasFeature(RawIdentifiers)` to
determine compiler support.
2025-03-11 17:26:27 -04:00
Anthony Latsis
5a92bc5e12
Merge pull request #79897 from AnthonyLatsis/danaus-plexippus-3
...
Small adjustments to adoption mode modeling
2025-03-11 11:47:18 +00:00
Michael Gottesman
04bb69f426
Merge pull request #79727 from gottesmm/pr-025c1133954b74e7b4eda77e1a6f3bcafd4eb6cf
...
[concurrency] Add initial support for SwiftSettings to control defaultIsolation at the file level.
2025-03-10 22:35:00 -07:00
Anthony Latsis
ae70d384e0
[NFC] Basic: Restrict adoption mode to upcoming and experimental features
2025-03-11 01:15:33 +00:00
Michael Gottesman
f64dd5a8d5
[concurrency] Add initial support for SwiftSettings to control defaultIsolation at the file level.
...
We introduce a new macro called #SwiftSettings that can be used in conjunction
with a new stdlib type called SwiftSetting to control the default isolation at
the file level. It overrides the current default isolation whether it is the
current nonisolated state or main actor (when -enable-experimental-feature
UnspecifiedMeansMainActorIsolated is set).
2025-03-10 17:33:45 -07:00
nate-chandler
c0ba520fac
Merge pull request #79781 from nate-chandler/general-coro/20250227/1
...
[CoroutineAccessors] Dispatch and PtrAuth.
2025-03-07 20:08:42 -08:00
Nate Chandler
f5d03a6d11
[CoroutineAccessor] Remove old ABI support.
...
This was useful during bringup. Now that retcon.once.dynamic coroutine
splitting is available, it's no longer needed.
2025-03-07 11:40:38 -08:00
Anthony Latsis
6a3903bb53
Revert "Revert "Introduce adoption mode for Swift features""
...
This reverts commit 393c59c078 .
2025-03-05 15:21:01 +00:00
Rintaro Ishizaki
393c59c078
Revert "Introduce adoption mode for Swift features"
2025-03-04 19:13:05 -08:00
Anthony Latsis
43b00af490
Merge pull request #79649 from AnthonyLatsis/danaus-plexippus
...
Introduce adoption mode for Swift features
2025-03-04 23:16:28 +00:00