Skip to content

Compiler crash with closure types with sending #79982

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

Open
kateinoigakukun opened this issue Mar 13, 2025 · 0 comments
Open

Compiler crash with closure types with sending #79982

kateinoigakukun opened this issue Mar 13, 2025 · 0 comments
Labels
bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. concurrency Feature: umbrella label for concurrency language features crash Bug: A crash, i.e., an abnormal termination of software triage needed This issue needs more specific labels

Comments

@kateinoigakukun
Copy link
Member

kateinoigakukun commented Mar 13, 2025

Description

It seems there is something wrong in inlining code with generic parameters including sending

Reproduction

public func check() {
    var items: [Int: (sending Int) -> Void] = [:]
    items[0] = nil
}
swift-frontend -c check.swift -g -O

Note that this only crashes with assertion enabled compilers on macOS for some reasons.

Stack dump

Assertion failed: (type1->getDecl() != type2->getDecl()), function visitNominalType, file TypeDifferenceVisitor.h, line 194.
Please submit a bug report (https://swift.org/contributing/#reporting-bugs) and include the crash backtrace.
Stack dump:
0.      Program arguments: /Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend -c check.swift -g -O
1.      Apple Swift version 6.2-dev (LLVM 81859ac55f8d09a, Swift 8ec8a1229a7ea14)
2.      Compiling with effective version 5.10
3.      While evaluating request IRGenRequest(IR Generation for module check)
4.      While emitting IR SIL function "@$s5checkAAyyF".
 for 'check()' (at check.swift:1:8)
 #0 0x000000010a425f60 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x10613df60)
 #1 0x000000010a424644 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x10613c644)
 #2 0x000000010a4265bc (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x10613e5bc)
 #3 0x000000018c49c184 (/usr/lib/system/libsystem_platform.dylib+0x180484184)
 #4 0x000000018c466f70 (/usr/lib/system/libsystem_pthread.dylib+0x18044ef70)
 #5 0x000000018c373908 (/usr/lib/system/libsystem_c.dylib+0x18035b908)
 #6 0x000000018c372c1c (/usr/lib/system/libsystem_c.dylib+0x18035ac1c)
 #7 0x000000010a4e81b8 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x1062001b8)
 #8 0x0000000104abd2b4 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x1007d52b4)
 #9 0x0000000104ab5800 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x1007cd800)
#10 0x0000000104ab66a8 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x1007ce6a8)
#11 0x0000000104aaebd0 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x1007c6bd0)
#12 0x0000000104aae3e8 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x1007c63e8)
#13 0x0000000104aad3c8 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x1007c53c8)
#14 0x0000000104af1e4c (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x100809e4c)
#15 0x0000000104af1308 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x100809308)
#16 0x00000001049854c0 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x10069d4c0)
#17 0x0000000104aa204c (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x1007ba04c)
#18 0x0000000104af06d4 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x1008086d4)
#19 0x0000000104aaa650 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x1007c2650)
#20 0x0000000104aa3108 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x1007bb108)
#21 0x0000000104571604 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x100289604)
#22 0x000000010456e2b4 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x1002862b4)
#23 0x000000010456d944 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x100285944)
#24 0x00000001045796a4 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x1002916a4)
#25 0x000000010456f418 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x100287418)
#26 0x000000010456ec34 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x100286c34)
#27 0x00000001043211b8 (/Users/katei/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2025-01-10-a.xctoolchain/usr/bin/swift-frontend+0x1000391b8)
#28 0x000000018c0e4274

Expected behavior

No crash

Environment

  • Toolchain: swift-DEVELOPMENT-SNAPSHOT-2025-03-10-a
  • Operating System: macOS 15.1.1 (24B91)
  • Target: arm64-apple-macosx15.0

Additional information

No response

@kateinoigakukun kateinoigakukun added bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. concurrency Feature: umbrella label for concurrency language features crash Bug: A crash, i.e., an abnormal termination of software triage needed This issue needs more specific labels labels Mar 13, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. concurrency Feature: umbrella label for concurrency language features crash Bug: A crash, i.e., an abnormal termination of software triage needed This issue needs more specific labels
Projects
None yet
Development

No branches or pull requests

1 participant