Skip to content

TEST 'Swift(linux-x86_64) :: Concurrency/dispatch_inference.swift' FAILED #70759

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
shahmishal opened this issue Jan 8, 2024 · 6 comments
Closed
Labels
compiler The Swift compiler itself concurrency Feature: umbrella label for concurrency language features Foundation Linux Platform: Linux Sendable Area → standard library: The Sendable protocol swift 6.0 test failure

Comments

@shahmishal
Copy link
Member

shahmishal commented Jan 8, 2024

FAIL: Swift(linux-x86_64) :: Concurrency/dispatch_inference.swift (661 of 17024)

******************** TEST 'Swift(linux-x86_64) :: Concurrency/dispatch_inference.swift' FAILED ********************
Script:
--
: 'RUN: at line 1';   /home/build-user/build/buildbot_linux/swift-linux-x86_64/bin/swift-frontend -target x86_64-unknown-linux-gnu  -module-cache-path /home/build-user/build/buildbot_linux/swift-linux-x86_64/swift-test-results/x86_64-unknown-linux-gnu/clang-module-cache -swift-version 4  -define-availability 'SwiftStdlib 9999:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999' -define-availability 'SwiftStdlib 5.0:macOS 10.14.4, iOS 12.2, watchOS 5.2, tvOS 12.2' -define-availability 'SwiftStdlib 5.1:macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0' -define-availability 'SwiftStdlib 5.2:macOS 10.15.4, iOS 13.4, watchOS 6.2, tvOS 13.4' -define-availability 'SwiftStdlib 5.3:macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0' -define-availability 'SwiftStdlib 5.4:macOS 11.3, iOS 14.5, watchOS 7.4, tvOS 14.5' -define-availability 'SwiftStdlib 5.5:macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0' -define-availability 'SwiftStdlib 5.6:macOS 12.3, iOS 15.4, watchOS 8.5, tvOS 15.4' -define-availability 'SwiftStdlib 5.7:macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0' -define-availability 'SwiftStdlib 5.8:macOS 13.3, iOS 16.4, watchOS 9.4, tvOS 16.4' -define-availability 'SwiftStdlib 5.9:macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0' -define-availability 'SwiftStdlib 5.10:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999'  -typo-correction-limit 10   -disable-availability-checking -I /home/build-user/swift-corelibs-libdispatch -I /home/build-user/build/buildbot_linux/libdispatch-linux-x86_64/src/swift/swift -L /home/build-user/build/buildbot_linux/libdispatch-linux-x86_64 -vfsoverlay /home/build-user/build/buildbot_linux/libdispatch-linux-x86_64/dispatch-vfs-overlay.yaml -warn-concurrency /home/build-user/swift/test/Concurrency/dispatch_inference.swift -emit-sil -o /dev/null -verify
: 'RUN: at line 2';   /home/build-user/build/buildbot_linux/swift-linux-x86_64/bin/swift-frontend -target x86_64-unknown-linux-gnu  -module-cache-path /home/build-user/build/buildbot_linux/swift-linux-x86_64/swift-test-results/x86_64-unknown-linux-gnu/clang-module-cache -swift-version 4  -define-availability 'SwiftStdlib 9999:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999' -define-availability 'SwiftStdlib 5.0:macOS 10.14.4, iOS 12.2, watchOS 5.2, tvOS 12.2' -define-availability 'SwiftStdlib 5.1:macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0' -define-availability 'SwiftStdlib 5.2:macOS 10.15.4, iOS 13.4, watchOS 6.2, tvOS 13.4' -define-availability 'SwiftStdlib 5.3:macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0' -define-availability 'SwiftStdlib 5.4:macOS 11.3, iOS 14.5, watchOS 7.4, tvOS 14.5' -define-availability 'SwiftStdlib 5.5:macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0' -define-availability 'SwiftStdlib 5.6:macOS 12.3, iOS 15.4, watchOS 8.5, tvOS 15.4' -define-availability 'SwiftStdlib 5.7:macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0' -define-availability 'SwiftStdlib 5.8:macOS 13.3, iOS 16.4, watchOS 9.4, tvOS 16.4' -define-availability 'SwiftStdlib 5.9:macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0' -define-availability 'SwiftStdlib 5.10:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999'  -typo-correction-limit 10   -disable-availability-checking -I /home/build-user/swift-corelibs-libdispatch -I /home/build-user/build/buildbot_linux/libdispatch-linux-x86_64/src/swift/swift -L /home/build-user/build/buildbot_linux/libdispatch-linux-x86_64 -vfsoverlay /home/build-user/build/buildbot_linux/libdispatch-linux-x86_64/dispatch-vfs-overlay.yaml -warn-concurrency /home/build-user/swift/test/Concurrency/dispatch_inference.swift -emit-sil -o /dev/null -verify -strict-concurrency=targeted
: 'RUN: at line 3';   /home/build-user/build/buildbot_linux/swift-linux-x86_64/bin/swift-frontend -target x86_64-unknown-linux-gnu  -module-cache-path /home/build-user/build/buildbot_linux/swift-linux-x86_64/swift-test-results/x86_64-unknown-linux-gnu/clang-module-cache -swift-version 4  -define-availability 'SwiftStdlib 9999:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999' -define-availability 'SwiftStdlib 5.0:macOS 10.14.4, iOS 12.2, watchOS 5.2, tvOS 12.2' -define-availability 'SwiftStdlib 5.1:macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0' -define-availability 'SwiftStdlib 5.2:macOS 10.15.4, iOS 13.4, watchOS 6.2, tvOS 13.4' -define-availability 'SwiftStdlib 5.3:macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0' -define-availability 'SwiftStdlib 5.4:macOS 11.3, iOS 14.5, watchOS 7.4, tvOS 14.5' -define-availability 'SwiftStdlib 5.5:macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0' -define-availability 'SwiftStdlib 5.6:macOS 12.3, iOS 15.4, watchOS 8.5, tvOS 15.4' -define-availability 'SwiftStdlib 5.7:macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0' -define-availability 'SwiftStdlib 5.8:macOS 13.3, iOS 16.4, watchOS 9.4, tvOS 16.4' -define-availability 'SwiftStdlib 5.9:macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0' -define-availability 'SwiftStdlib 5.10:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999'  -typo-correction-limit 10   -disable-availability-checking -I /home/build-user/swift-corelibs-libdispatch -I /home/build-user/build/buildbot_linux/libdispatch-linux-x86_64/src/swift/swift -L /home/build-user/build/buildbot_linux/libdispatch-linux-x86_64 -vfsoverlay /home/build-user/build/buildbot_linux/libdispatch-linux-x86_64/dispatch-vfs-overlay.yaml -warn-concurrency /home/build-user/swift/test/Concurrency/dispatch_inference.swift -emit-sil -o /dev/null -verify -strict-concurrency=complete
: 'RUN: at line 4';   /home/build-user/build/buildbot_linux/swift-linux-x86_64/bin/swift-frontend -target x86_64-unknown-linux-gnu  -module-cache-path /home/build-user/build/buildbot_linux/swift-linux-x86_64/swift-test-results/x86_64-unknown-linux-gnu/clang-module-cache -swift-version 4  -define-availability 'SwiftStdlib 9999:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999' -define-availability 'SwiftStdlib 5.0:macOS 10.14.4, iOS 12.2, watchOS 5.2, tvOS 12.2' -define-availability 'SwiftStdlib 5.1:macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0' -define-availability 'SwiftStdlib 5.2:macOS 10.15.4, iOS 13.4, watchOS 6.2, tvOS 13.4' -define-availability 'SwiftStdlib 5.3:macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0' -define-availability 'SwiftStdlib 5.4:macOS 11.3, iOS 14.5, watchOS 7.4, tvOS 14.5' -define-availability 'SwiftStdlib 5.5:macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0' -define-availability 'SwiftStdlib 5.6:macOS 12.3, iOS 15.4, watchOS 8.5, tvOS 15.4' -define-availability 'SwiftStdlib 5.7:macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0' -define-availability 'SwiftStdlib 5.8:macOS 13.3, iOS 16.4, watchOS 9.4, tvOS 16.4' -define-availability 'SwiftStdlib 5.9:macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0' -define-availability 'SwiftStdlib 5.10:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999'  -typo-correction-limit 10   -disable-availability-checking -I /home/build-user/swift-corelibs-libdispatch -I /home/build-user/build/buildbot_linux/libdispatch-linux-x86_64/src/swift/swift -L /home/build-user/build/buildbot_linux/libdispatch-linux-x86_64 -vfsoverlay /home/build-user/build/buildbot_linux/libdispatch-linux-x86_64/dispatch-vfs-overlay.yaml -warn-concurrency /home/build-user/swift/test/Concurrency/dispatch_inference.swift -emit-sil -o /dev/null -verify -strict-concurrency=complete -enable-experimental-feature SendNonSendable
--
Exit Code: 1

Command Output (stderr):
--
/home/build-user/swift/test/Concurrency/dispatch_inference.swift:25:24: error: expected warning, not error
    x = 17 // expected-warning{{mutation of captured var 'x' in concurrently-executing code}}
                       ^~~~~~~
                       error
/home/build-user/swift/test/Concurrency/dispatch_inference.swift:33:24: error: expected warning, not error
    x = 17 // expected-warning{{mutation of captured var 'x' in concurrently-executing code}}
                       ^~~~~~~
                       error

--

********************
@shahmishal
Copy link
Member Author

This started after switching the expected-error over to expected-warning to resolve test failure on macOS. Should this behave differently between macOS and Linux?

To unblock PR testing, going to disable the test for now.

@shahmishal shahmishal added bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. concurrency Feature: umbrella label for concurrency language features labels Jan 8, 2024
@AnthonyLatsis AnthonyLatsis added test failure compiler The Swift compiler itself swift 6.0 and removed bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. labels Jan 8, 2024
@shahmishal
Copy link
Member Author

cc: @hborla

al45tair added a commit to al45tair/swift that referenced this issue Feb 14, 2024
This is the problem mentioned in swiftlang#70759 (or a variant thereof);
apparently macOS gives warnings when Linux is giving errors.
al45tair added a commit to al45tair/swift that referenced this issue Feb 14, 2024
This is the problem mentioned in swiftlang#70759 (or a variant thereof);
apparently macOS gives warnings when Linux is giving errors.
@hborla
Copy link
Member

hborla commented Feb 20, 2024

This is because DispatchQueue.async is missing a @Sendable annotation on the closure parameter in swift-corelibs-dispatch: https://github.com/apple/swift-corelibs-libdispatch/blob/main/src/swift/Queue.swift#L256

@AnthonyLatsis AnthonyLatsis added Linux Platform: Linux Foundation transfer candidate The issue may belong in another repository labels Feb 20, 2024
@AnthonyLatsis
Copy link
Collaborator

@hborla Are we deliberately not transferring this?

@ktoso
Copy link
Contributor

ktoso commented Mar 29, 2024

Missing sendable was added to corelibs dispatch:

We can close this issue IMHO

@ktoso ktoso closed this as completed Mar 29, 2024
@ktoso
Copy link
Contributor

ktoso commented Mar 29, 2024

And the test is already re-enabled due to other work

@AnthonyLatsis AnthonyLatsis added Sendable Area → standard library: The Sendable protocol and removed transfer candidate The issue may belong in another repository labels Mar 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
compiler The Swift compiler itself concurrency Feature: umbrella label for concurrency language features Foundation Linux Platform: Linux Sendable Area → standard library: The Sendable protocol swift 6.0 test failure
Projects
None yet
Development

No branches or pull requests

4 participants