Open
Conversation
This is a workaround to avoid missing lowering of dynamic_self in IRGen Fixes rdar://174428100
The CHECK pattern expected `tail call` but LLVM only emits `tail call` on x86. resolves rdar://174207398
Optimizer: fix optimization of unconditional `cond_fail`s
tests: adapt fast-conformance tests to ptrauth
In Windows, stdin/stdout is "text" mode by default, but macro plugin message is binary data. rdar://174235365
Co-authored-by: Alex Martini <amartini@apple.com> Co-authored-by: Graham Lee <glee23@apple.com> Co-authored-by: Chris Adamson <cadamson@apple.com> Co-authored-by: Kirby Turner <kirby_turner@apple.com> Co-authored-by: Paris Pinkney <ppinkney@apple.com> Co-authored-by: Dave Spector <dspector@apple.com> Co-authored-by: Sofia Rodriguez Morales <sofia_rodriguez@apple.com> Co-authored-by: Ethan Kusters <ekusters@apple.com> Co-authored-by: Goli Mohammadi <g_mohammadi@apple.com> Co-authored-by: Adora Vaz <a_vaz@apple.com> Co-authored-by: David Rönnqvist <ronnqvist@apple.com> Co-authored-by: Nate Merseth Cook <natecook@apple.com> Co-authored-by: Susan Conant <susan_c@apple.com>
Reparenting: improve interface feature guarding
[Concurrency] Fix IRGen test for task-local metadata on ARM64
…-only-vector [cxx-interop] Re-apply support for subscripts of non-copyable types
Currently there is only `erased` but this is soon to gain one more - `nonisolated(nonsending)`.
…ation Similarly to `@isolated(any)` it's sometimes necessary to check whether a call is to a `nonisolated(nonsending)` function value i.e. for hop elimination pass and without this isolation support it has to go trying to figure out the isolation from a callee which is not possible if it doesn't refer to a `SILFunction *`.
…on in SIL function types
Generalizes how isolation is stored for SILFunctionType and makes it possible to store not just "erased" but any future isolation we'd need to add as well.
…ation If a function type requires an implicit isolation parameter also set `nonisolated(nonsending)` isolation on it. This helps us track all of the references to `nonisolated(nonsending)` functions.
utils: give toolchains a unique identifier
Fix module names on OpenBSD for amd64/x86_64.
LLVM Build Product: remove duplicated variables
…dMutateAccessors-runtime Remove -enable-experimental-feature BorrowAndMutateAccessors from the core runtime library
Resolves rdar://131726749
…zed containers As a workaround for issues with uniquing, bound generics are emitted as a nested structure: - A sized outer structure with no name or identifier - A sizeless inner structure with the mangled name as the name and no identifier. The actual mechanism of connection for the inner and outer structures is that the outer structure has a single unnamed member whose type is the inner structure. However, LLVM CodeView emission treats unnamed members as anonymous structs and tries to inline their members into the parent. But since the inner struct has no members, the effect is that it gets dropped. This change names the inner struct with the mangled type name. This will have the effect of preserving the inner struct in CodeView output, and allow us to use a variation of the DWARF logic at https://github.com/swiftlang/llvm-project/blob/cd1235e59b87c84144802ab85592ee75a615f231/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserSwift.cpp#L166 to recognize and handle this pattern. More details and discussion at #87093
Diagnose public imports of IPI (non-distributable) modules from API/SPI modules. Hidden imports (@_implementationOnly, internal, package) and imports from other IPI/Other modules are allowed. rdar://174257067
Update the pull request template to include the release nomination form
…37884 SILGen: fix mismatch in expectations of substitution map
Trying to maintain visibility on how all of the projects are doing by running as many of the test suites as we are able to build.
These tests attempt to reproduce some reported issues (though not always successfully).
…enabled. When performing qualified lookup with MemberImportVisibility enabled, always filter out all overridden methods that come from modules that have not been imported. This ensures that new overrides of a method in dependencies are not source breaking for dependents with MemberImportVisibility enabled. This generalizes the logic added in #81089 that was previously limited to overrides coming from Obj-C categories. Resolves rdar://170089840.
[cxx-interop] Forward sanitizer flags to Clang importer
Fix the cross-compiled Windows ARM64 NoAsserts toolchain
There is some logic to figure out if a type is unreferencable but that did not handle tuple fields. C arrays are imported as Swift tuples, so in case a C array had unreferenceable element type we can end up taking the wrong path in the optimizer and trigger a crash. rdar://175037688
[Concurrency] Warn about un-used throwing unstructured tasks
Downgrade to warning isolated_conformance_may_cross_isolation
[Sema] Check references for application of functions stored in vars
…rfaces. Conformance checking in swiftinterfaces is lenient and can recover from missing witnesses by assuming that the protocol witness table will have an entry for the requirement at runtime. As a result, diagnosing missing imports for witnesses here could break source compatibility for existing interface files and must be skipped. This fixes a regression introduced by #88470. Resolves rdar://175215763.
Required for Builtin.borrowAt. SILGen may generate dead borrow scopes for loadable values used in a return expression that for a borrow access that uses guaranteed_address convention. rdar://175382154 (Enable load_borrow simplification at -Onone)
[Diagnostics] Coalesce large homogeneous tuples in diagnostics
Enabling SuppressedAssociatedTypesWithDefaults is source-breaking for any previous users of these two protocols. Luckily, the suppression of the primary associates types in these protocols hasn't landed in any release of Swift yet (as far as I know).
Ensures that people can workaround issues in light of SE-503, for people using libraries that adopted the old experimental SuppressedAssociatedTypes.
[Concurrency] Remove the SE-0505 APIs.
…-diags-for-conformances-in-swiftinterfaces Sema: Skip `MemberImportVisibility` diags for conformances in swiftinterfaces
[cxx-interop] Add `std::expected` into the libstdc++ modulemap on Linux
…meters `template<template <typename> typename>` was tripping up the template class name printer – different instantiations of a class template were getting assigned the same name. rdar://169199221
[cxx-interop] Do not import default arguments of constructors that require template instantiation
Fix merging bounds checks with fixed-storage semantics
Don't optimize alloc_stack with dynamic_lifetime in TempLValueElimination
[cxx-interop] Fix an optimizer crash for some single field structs
For some reason this test started failing in asan builds rdar://172392429
Enable load_borrow simplification at -Onone
tests: disable IRGen/sensitive.swift for asan builds
[Option] Make `-const-gather-protocols-list` a frontend argument
[Caching] Use on-disk path for first-time diagnostic emission with prefix mapping
Enable SE-503 (SuppressedAssociatedTypesWithDefaults)
Add SE-0489 (Codable error debug descriptions) to changelog
[cxx-interop] Disambiguate instantiations with template template parameters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )