Skip to content

Tags: swiftwasm/swift

Tags

swift-wasm-DEVELOPMENT-SNAPSHOT-2025-06-03-a

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Merge pull request swiftlang#81908 from artemcm/FixImplicitBuildCXXIn…

…teropCycle

[C++Interop] Do not query C++ Standard Library Swift overlays when building Swift modules which were built without C++ interop

swift-wasm-DEVELOPMENT-SNAPSHOT-2025-06-01-a

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Merge pull request swiftlang#81751 from tshortli/migratable-member-im…

…port-visibility

swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-29-a

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Merge pull request swiftlang#81830 from eeckstein/fix-simplify-apply

SimplifyApply: don't do the raw-enum comparison optimization for custom RawRepresentable enums

swift-wasm-6.0-SNAPSHOT-2025-05-28-a

[wasm] Annotate errno as SwiftPrivate by apinotes

This patch adds an apinotes file for SwiftWASILibc clang module to mark
`errno` macro hidden from Swift code. This resolves ambiguity between
the C macro definition and the Swift wrapper in WASILibc overlay module.

This change installs the apinotes file to the resource directories for
both lib/swift/apinotes and lib/swift_static/apinotes.

swift-wasm-6.0-SNAPSHOT-2025-05-27-a

[wasm] Annotate errno as SwiftPrivate by apinotes

This patch adds an apinotes file for SwiftWASILibc clang module to mark
`errno` macro hidden from Swift code. This resolves ambiguity between
the C macro definition and the Swift wrapper in WASILibc overlay module.

This change installs the apinotes file to the resource directories for
both lib/swift/apinotes and lib/swift_static/apinotes.

swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-27-a

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Merge pull request swiftlang#81767 from tshortli/fix-zippered-custom-…

…availability-queries

SILGen: Fix `if #available` for unavailable custom domains in zippered modules

swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-26-a

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
[AutoDiff] Support custom derivatives for @_alwaysEmitIntoClient func…

…tions (swiftlang#78908)

Consider an `@_alwaysEmitIntoClient` function and a custom derivative
defined
for it. Previously, such a combination resulted different errors under
different
circumstances.

Sometimes, there were linker errors due to missing derivative function
symbol -
these occurred when we tried to find the derivative in a module, while
it
should have been emitted into client's code (and it did not happen).

Sometimes, there were SIL verification failures like this:

```
SIL verification failed: internal/private function cannot be serialized or serializable: !F->isAnySerialized() || embedded
```

Linkage and serialization options for the derivative were not handled
properly,
and, instead of PublicNonABI linkage, we had Private one which is
unsupported
for serialization - but we need to serialize `@_alwaysEmitIntoClient`
functions
so the client's code is able to see them.

This patch resolves the issue and adds proper handling of custom
derivatives
of `@_alwaysEmitIntoClient` functions. Note that either both the
function and
its custom derivative or none of them should have
`@_alwaysEmitIntoClient`
attribute, mismatch in this attribute is not supported.

The following cases are handled (assume that in each case client's code
uses
the derivative).

1. Both the function and its derivative are defined in a single file in
   one module.

2. Both the function and its derivative are defined in different files
which
   are compiled to a single module.

3. The function is defined in one module, its derivative is defined in
another
   module.

4. The function and the derivative are defined as members of a protocol
extension in two separate modules - one for the function and one for the
   derivative. A struct conforming the protocol is defined in the third
   module.

5. The function and the derivative are defined as members of a struct
extension in two separate modules - one for the function and one for the
   derivative.

The changes allow to define derivatives for methods of `SIMD`.

Fixes swiftlang#54445
<!--
If this pull request is targeting a release branch, please fill out the
following form:

https://github.com/swiftlang/.github/blob/main/PULL_REQUEST_TEMPLATE/release.md?plain=1

Otherwise, replace this comment with a description of your changes and
rationale. Provide links to external references/discussions if
appropriate.
If this pull request resolves any GitHub issues, link them like so:

  Resolves <link to issue>, resolves <link to another issue>.

For more information about linking a pull request to an issue, see:

https://docs.github.com/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue
-->

<!--
Before merging this pull request, you must run the Swift continuous
integration tests.
For information about triggering CI builds via @swift-ci, see:

https://github.com/apple/swift/blob/main/docs/ContinuousIntegration.md#swift-ci

Thank you for your contribution to Swift!
-->

swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-25-a

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Merge pull request swiftlang#81745 from compnerd/summary

utils: fix summary emission with caching

swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-24-a

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Merge pull request swiftlang#76705 from slavapestov/existential-param…

…eterized-composition

Allow existential parameterized compositions: `any P<A> & Q`

swift-wasm-DEVELOPMENT-SNAPSHOT-2025-05-23-a

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Merge pull request swiftlang#81733 from compnerd/sccache

utils: download sccache for Windows