-
Notifications
You must be signed in to change notification settings - Fork 10.6k
Closed
Labels
bugA deviation from expected or documented behavior. Also: expected but undesirable behavior.A deviation from expected or documented behavior. Also: expected but undesirable behavior.crashBug: A crash, i.e., an abnormal termination of softwareBug: A crash, i.e., an abnormal termination of softwareparameter packsFeature → generics: Parameter packsFeature → generics: Parameter packs
Description
Description
When building the swift-java in release mode with 6.2, we face a compiler crash.
It seems related to parameter packs and in particular this function:
https://github.com/swiftlang/swift-java/blob/main/Sources/SwiftJava/JavaObject%2BMethodCalls.swift#L19
It compiles fine in debug mode.
Reproduction
Just clone the repo and try to build it.
git clone https://github.com/swiftlang/swift-java
cd swift-java
swift build -c release
Stack dump
SIL verification failed: Two variables with different type but same scope!: lhs == rhs || (lhs.isAddress() && lhs.getObjectType() == rhs) || (DebugVarTy.isAddress() && lhs == rhs.getObjectType())
Verifying instruction:
%46 = load [trivial] %45 : $*@thick (@pack_element("B256392E-A98A-11F0-A8C1-A60E5582022A") each Param).Type // users: %49, %47
-> debug_value %46 : $@thick (@pack_element("B256392E-A98A-11F0-A8C1-A60E5582022A") each Param).Type, let, name "parameterType" // id: %47
In function:
// specialized methodMangling<each A>(parameterTypes:resultType:)
sil private [ossa] @$s7JavaKit14methodMangling33_F477D858CD12D2AC0EF13F84839B4760LL14parameterTypes10resultTypeSSxmxQp_0aN00aP0OtRvzAA0A5ValueRzlFs5Int64V_s5Int32VQP_Tg5 : $@convention(thin) (@pack_guaranteed Pack{@thick Int64.Type, @thick Int32.Type}, @guaranteed JavaType) -> @owned String {
[%0: read v**]
[%1: read **, write v**.c*.v**, copy v**.**, destroy v**.c*.v**]
[global: read,write,copy,destroy,allocate,deinit_barrier]
// %0 "parameterTypes" // users: %45, %22, %2
// %1 "resultType" // users: %67, %3
bb0(%0 : $*Pack{@thick Int64.Type, @thick Int32.Type}, %1 : @guaranteed $JavaType):
debug_value %0, let, name "parameterTypes", argno 1, expr op_deref // id: %2
debug_value %1, let, name "resultType", argno 2 // id: %3
%4 = alloc_stack [var_decl] $Array<JavaType>, var, name "parameterTypesArray" // users: %64, %63, %62, %51, %41, %40, %39, %28, %14, %72, %65, %11
%5 = integer_literal $Builtin.Int64, 0 // user: %6
%6 = struct $Int (%5) // user: %8
// function_ref specialized static Array._allocateUninitialized(_:)
%7 = function_ref @$sSa22_allocateUninitializedySayxG_SpyxGtSiFZ9JavaTypes0C4TypeO_Tt0g5 : $@convention(thin) (Int) -> (@owned Array<JavaType>, UnsafeMutablePointer<JavaType>) // user: %8
%8 = apply %7(%6) : $@convention(thin) (Int) -> (@owned Array<JavaType>, UnsafeMutablePointer<JavaType>) // user: %9
(%9, %10) = destructure_tuple %8 // user: %11
store %9 to [init] %4 // id: %11
%12 = integer_literal $Builtin.Word, 0 // user: %20
// function_ref specialized Array._makeUniqueAndReserveCapacityIfNotUnique()
%13 = function_ref @$sSa034_makeUniqueAndReserveCapacityIfNotB0yyF9JavaTypes0H4TypeO_Tg5 : $@convention(method) (@inout Array<JavaType>) -> () // users: %51, %28
%14 = struct_element_addr %4, #Array._buffer // user: %15
%15 = struct_element_addr %14, #_ArrayBuffer._storage // user: %16
%16 = struct_element_addr %15, #_BridgeStorage.rawValue // users: %52, %29
// function_ref specialized Array._reserveCapacityAssumingUniqueBuffer(oldCount:)
%17 = function_ref @$sSa36_reserveCapacityAssumingUniqueBuffer8oldCountySi_tF9JavaTypes0H4TypeO_Tg5 : $@convention(method) (Int, @inout Array<JavaType>) -> () // users: %62, %39
// function_ref specialized Array._appendElementAssumeUniqueAndCapacity(_:newElement:)
%18 = function_ref @$sSa37_appendElementAssumeUniqueAndCapacity_03newB0ySi_xntF9JavaTypes0H4TypeO_Tg5 : $@convention(method) (Int, @owned JavaType, @inout Array<JavaType>) -> () // users: %63, %40
// function_ref specialized Array._endMutation()
%19 = function_ref @$sSa12_endMutationyyF9JavaTypes0C4TypeO_Tg5 : $@convention(method) (@inout Array<JavaType>) -> () // users: %64, %41
%20 = dynamic_pack_index %12 of $Pack{Int64.Type, Int32.Type} // users: %22, %21
%21 = open_pack_element %20 of <each Param where repeat each Param : JavaValue> at <Pack{Int64, Int32}>, shape $each Param, uuid "B2563014-A98A-11F0-A8C1-A60E5582022A" // users: %26, %25, %22
%22 = pack_element_get %20 of %0 as $*@thick (@pack_element("B2563014-A98A-11F0-A8C1-A60E5582022A") each Param).Type // user: %23
%23 = load [trivial] %22 // users: %26, %24
debug_value %23, let, name "parameterType" // id: %24
%25 = witness_method $@pack_element("B2563014-A98A-11F0-A8C1-A60E5582022A") each Param, #JavaValue.javaType!getter : <Self where Self : JavaValue, Self : ~Copyable> (Self.Type) -> () -> JavaTypes.JavaType, %21 : $Builtin.SILToken : $@convention(witness_method: JavaValue) <τ_0_0 where τ_0_0 : JavaValue, τ_0_0 : ~Copyable> (@thick τ_0_0.Type) -> @owned JavaType // type-defs: %21; user: %26
%26 = apply %25<@pack_element("B2563014-A98A-11F0-A8C1-A60E5582022A") each Param>(%23) : $@convention(witness_method: JavaValue) <τ_0_0 where τ_0_0 : JavaValue, τ_0_0 : ~Copyable> (@thick τ_0_0.Type) -> @owned JavaType // type-defs: %21; user: %27
%27 = move_value [lexical] %26 // user: %40
%28 = apply %13(%4) : $@convention(method) (@inout Array<JavaType>) -> ()
%29 = load_borrow %16 // users: %38, %30
%30 = unchecked_ref_cast %29 to $__ContiguousArrayStorageBase // user: %31
%31 = ref_element_addr %30, #__ContiguousArrayStorageBase.countAndCapacity // user: %32
%32 = struct_element_addr %31, #_ArrayBody._storage // user: %33
%33 = struct_element_addr %32, #_SwiftArrayBodyStorage.count // user: %34
%34 = struct_element_addr %33, #Int._value // user: %35
%35 = load [trivial] %34 // user: %36
%36 = builtin "assumeNonNegative_Int64"(%35) : $Builtin.Int64 // user: %37
%37 = struct $Int (%36) // users: %40, %39
end_borrow %29 // id: %38
%39 = apply %17(%37, %4) : $@convention(method) (Int, @inout Array<JavaType>) -> ()
%40 = apply %18(%37, %27, %4) : $@convention(method) (Int, @owned JavaType, @inout Array<JavaType>) -> ()
%41 = apply %19(%4) : $@convention(method) (@inout Array<JavaType>) -> ()
%42 = integer_literal $Builtin.Word, 1 // user: %43
%43 = dynamic_pack_index %42 of $Pack{Int64.Type, Int32.Type} // users: %45, %44
%44 = open_pack_element %43 of <each Param where repeat each Param : JavaValue> at <Pack{Int64, Int32}>, shape $each Param, uuid "B256392E-A98A-11F0-A8C1-A60E5582022A" // users: %49, %48, %45
%45 = pack_element_get %43 of %0 as $*@thick (@pack_element("B256392E-A98A-11F0-A8C1-A60E5582022A") each Param).Type // user: %46
%46 = load [trivial] %45 // users: %49, %47
debug_value %46, let, name "parameterType" // id: %47
%48 = witness_method $@pack_element("B256392E-A98A-11F0-A8C1-A60E5582022A") each Param, #JavaValue.javaType!getter : <Self where Self : JavaValue, Self : ~Copyable> (Self.Type) -> () -> JavaTypes.JavaType, %44 : $Builtin.SILToken : $@convention(witness_method: JavaValue) <τ_0_0 where τ_0_0 : JavaValue, τ_0_0 : ~Copyable> (@thick τ_0_0.Type) -> @owned JavaType // type-defs: %44; user: %49
%49 = apply %48<@pack_element("B256392E-A98A-11F0-A8C1-A60E5582022A") each Param>(%46) : $@convention(witness_method: JavaValue) <τ_0_0 where τ_0_0 : JavaValue, τ_0_0 : ~Copyable> (@thick τ_0_0.Type) -> @owned JavaType // type-defs: %44; user: %50
%50 = move_value [lexical] %49 // user: %63
%51 = apply %13(%4) : $@convention(method) (@inout Array<JavaType>) -> ()
%52 = load_borrow %16 // users: %61, %53
%53 = unchecked_ref_cast %52 to $__ContiguousArrayStorageBase // user: %54
%54 = ref_element_addr %53, #__ContiguousArrayStorageBase.countAndCapacity // user: %55
%55 = struct_element_addr %54, #_ArrayBody._storage // user: %56
%56 = struct_element_addr %55, #_SwiftArrayBodyStorage.count // user: %57
%57 = struct_element_addr %56, #Int._value // user: %58
%58 = load [trivial] %57 // user: %59
%59 = builtin "assumeNonNegative_Int64"(%58) : $Builtin.Int64 // user: %60
%60 = struct $Int (%59) // users: %63, %62
end_borrow %52 // id: %61
%62 = apply %17(%60, %4) : $@convention(method) (Int, @inout Array<JavaType>) -> ()
%63 = apply %18(%60, %50, %4) : $@convention(method) (Int, @owned JavaType, @inout Array<JavaType>) -> ()
%64 = apply %19(%4) : $@convention(method) (@inout Array<JavaType>) -> ()
%65 = load [take] %4 // user: %66
%66 = move_value [lexical] %65 // user: %68
%67 = copy_value %1 // user: %68
%68 = struct $MethodSignature (%67, %66) // users: %71, %70
// function_ref MethodSignature.mangledName.getter
%69 = function_ref @$s9JavaTypes15MethodSignatureV11mangledNameSSvg : $@convention(method) (@guaranteed MethodSignature) -> @owned String // user: %70
%70 = apply %69(%68) : $@convention(method) (@guaranteed MethodSignature) -> @owned String // user: %73
destroy_value %68 // id: %71
dealloc_stack %4 // id: %72
return %70 // id: %73
} // end sil function '$s7JavaKit14methodMangling33_F477D858CD12D2AC0EF13F84839B4760LL14parameterTypes10resultTypeSSxmxQp_0aN00aP0OtRvzAA0A5ValueRzlFs5Int64V_s5Int32VQP_Tg5'
Please submit a bug report (https://swift.org/contributing/#reporting-bugs) and include the crash backtrace.
Stack dump:
0. Program arguments: /Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend -frontend -c /Users/mads/dev/swift-java/Sources/JavaKit/AnyJavaObject.swift /Users/mads/dev/swift-java/Sources/JavaKit/BridgedValues/JavaValue+Array.swift /Users/mads/dev/swift-java/Sources/JavaKit/BridgedValues/JavaValue+Bool.swift /Users/mads/dev/swift-java/Sources/JavaKit/BridgedValues/JavaValue+FloatingPoint.swift /Users/mads/dev/swift-java/Sources/JavaKit/BridgedValues/JavaValue+Integers.swift /Users/mads/dev/swift-java/Sources/JavaKit/BridgedValues/JavaValue+String.swift /Users/mads/dev/swift-java/Sources/JavaKit/Exceptions/Exception+Error.swift /Users/mads/dev/swift-java/Sources/JavaKit/Exceptions/ExceptionHandling.swift /Users/mads/dev/swift-java/Sources/JavaKit/Exceptions/Throwable+Error.swift /Users/mads/dev/swift-java/Sources/JavaKit/JavaClass+Initialization.swift /Users/mads/dev/swift-java/Sources/JavaKit/JavaEnvironment.swift /Users/mads/dev/swift-java/Sources/JavaKit/JavaKitVM/JavaVirtualMachine.swift /Users/mads/dev/swift-java/Sources/JavaKit/JavaKitVM/LockedState.swift /Users/mads/dev/swift-java/Sources/JavaKit/JavaKitVM/ThreadLocalStorage.swift /Users/mads/dev/swift-java/Sources/JavaKit/JavaObject+Inheritance.swift /Users/mads/dev/swift-java/Sources/JavaKit/JavaObject+MethodCalls.swift /Users/mads/dev/swift-java/Sources/JavaKit/JavaObjectHolder.swift /Users/mads/dev/swift-java/Sources/JavaKit/JavaRuntime+Reexport.swift /Users/mads/dev/swift-java/Sources/JavaKit/JavaValue.swift /Users/mads/dev/swift-java/Sources/JavaKit/Macros.swift /Users/mads/dev/swift-java/Sources/JavaKit/Optional+JavaObject.swift /Users/mads/dev/swift-java/Sources/JavaKit/Optional+JavaOptional.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/Exception.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaArray.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaBoolean.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaByte.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaCharacter.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaClass.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaClassLoader.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaDouble.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaError.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaFloat.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaInteger.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaLong.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaNumber.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaObject.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaOptional.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaOptionalDouble.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaOptionalInt.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaOptionalLong.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaShort.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaString.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/JavaVoid.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/RuntimeException.swift /Users/mads/dev/swift-java/Sources/JavaKit/generated/Throwable.swift -supplementary-output-file-map /var/folders/q5/qmmkl6mx1c144wbfxscvkwvr0000gn/T/TemporaryDirectory.eHIVwx/supplementaryOutputs-1 -target arm64-apple-macosx10.15 -Xllvm -aarch64-use-tbi -enable-objc-interop -sdk /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -I /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/Modules-tool -I /Users/mads/.sdkman/candidates/java/current/include -I /Users/mads/.sdkman/candidates/java/current/include/darwin -I /Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/lib/swift/macosx/testing -I /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib -F /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -F /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/PrivateFrameworks -color-diagnostics -Xcc -fcolor-diagnostics -g -debug-info-format=dwarf -dwarf-version=4 -module-cache-path /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/ModuleCache -swift-version 5 -O -D SWIFT_PACKAGE -D SWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -load-plugin-executable /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKitMacros-tool#JavaKitMacros -empty-abi-descriptor -plugin-path /Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/lib/swift/host/plugins/testing -file-compilation-dir /Users/mads/dev/swift-java -Xcc -fmodule-map-file=/Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaRuntime-tool.build/module.modulemap -Xcc -I -Xcc /Users/mads/dev/swift-java/Sources/JavaRuntime/include -Xcc -isysroot -Xcc /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -Xcc -F -Xcc /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -Xcc -F -Xcc /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/PrivateFrameworks -Xcc -fPIC -Xcc -g -no-auto-bridging-header-chaining -module-name JavaKit -package-name swift_java -in-process-plugin-server-path /Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/lib/swift/host/libSwiftInProcPluginServer.dylib -plugin-path /Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/lib/swift/host/plugins -plugin-path /Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/local/lib/swift/host/plugins -target-sdk-version 26.0 -target-sdk-name macosx26.0 -external-plugin-path /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib/swift/host/plugins#/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/bin/swift-plugin-server -external-plugin-path /Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/local/lib/swift/host/plugins#/Applications/Xcode-26.0.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/bin/swift-plugin-server -enable-default-cmo -parse-as-library -num-threads 10 -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/AnyJavaObject.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaValue+Array.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaValue+Bool.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaValue+FloatingPoint.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaValue+Integers.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaValue+String.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/Exception+Error.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/ExceptionHandling.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/Throwable+Error.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaClass+Initialization.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaEnvironment.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaVirtualMachine.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/LockedState.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/ThreadLocalStorage.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaObject+Inheritance.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaObject+MethodCalls.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaObjectHolder.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaRuntime+Reexport.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaValue.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/Macros.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/Optional+JavaObject.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/Optional+JavaOptional.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/Exception.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaArray.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaBoolean.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaByte.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaCharacter.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaClass.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaClassLoader.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaDouble.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaError.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaFloat.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaInteger.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaLong.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaNumber.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaObject.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaOptional.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaOptionalDouble.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaOptionalInt.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaOptionalLong.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaShort.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaString.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/JavaVoid.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/RuntimeException.swift.o -o /Users/mads/dev/swift-java/.build/arm64-apple-macosx/release/JavaKit-tool.build/Throwable.swift.o
1. Apple Swift version 6.2 (swift-6.2-RELEASE)
2. Compiling with effective version 5.10
3. While evaluating request ExecuteSILPipelineRequest(Run pipelines { PrepareOptimizationPasses, EarlyModulePasses, HighLevel,Function+EarlyLoopOpt, HighLevel,Module+StackPromote, MidLevel,Function, ClosureSpecialize, LowLevel,Function, LateLoopOpt, SIL Debug Info Generator } on SIL for JavaKit)
4. While running pass #473980 SILFunctionTransform "OwnershipModelEliminator" on SILFunction "@$s7JavaKit14methodMangling33_F477D858CD12D2AC0EF13F84839B4760LL14parameterTypes10resultTypeSSxmxQp_0aN00aP0OtRvzAA0A5ValueRzlFs5Int64V_s5Int32VQP_Tg5".
for 'methodMangling(parameterTypes:resultType:)' (at /Users/mads/dev/swift-java/Sources/JavaKit/JavaObject+MethodCalls.swift:19:9)
5. Found verification error when verifying before lowering ownership. Please re-run with -sil-verify-all to identify the actual pass that introduced the verification error.
6. While verifying SIL function "@$s7JavaKit14methodMangling33_F477D858CD12D2AC0EF13F84839B4760LL14parameterTypes10resultTypeSSxmxQp_0aN00aP0OtRvzAA0A5ValueRzlFs5Int64V_s5Int32VQP_Tg5".
for 'methodMangling(parameterTypes:resultType:)' (at /Users/mads/dev/swift-java/Sources/JavaKit/JavaObject+MethodCalls.swift:19:9)
#0 0x0000000108244f18 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x1059dcf18)
#1 0x0000000108243644 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x1059db644)
#2 0x0000000108245560 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x1059dd560)
#3 0x0000000192d4e744 (/usr/lib/system/libsystem_platform.dylib+0x1804d6744)
#4 0x0000000192d44888 (/usr/lib/system/libsystem_pthread.dylib+0x1804cc888)
#5 0x0000000192c4a808 (/usr/lib/system/libsystem_c.dylib+0x1803d2808)
#6 0x00000001039a4c74 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x10113cc74)
#7 0x00000001039c84b0 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x1011604b0)
#8 0x00000001039ad084 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x101145084)
#9 0x00000001039aca50 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x101144a50)
#10 0x00000001039ab3b0 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x1011433b0)
#11 0x00000001039a568c (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x10113d68c)
#12 0x000000010348b558 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x100c23558)
#13 0x00000001034926bc (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x100c2a6bc)
#14 0x00000001034933e0 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x100c2b3e0)
#15 0x00000001034905ec (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x100c285ec)
#16 0x000000010349056c (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x100c2856c)
#17 0x00000001034b5dac (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x100c4ddac)
#18 0x00000001034977b8 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x100c2f7b8)
#19 0x00000001034907dc (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x100c287dc)
#20 0x0000000103498f40 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x100c30f40)
#21 0x0000000102d3df64 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x1004d5f64)
#22 0x0000000102afcfa4 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x100294fa4)
#23 0x0000000102afc960 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x100294960)
#24 0x0000000102b08dc8 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x1002a0dc8)
#25 0x0000000102afe3fc (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x1002963fc)
#26 0x0000000102afdbb8 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x100295bb8)
#27 0x00000001028a16b4 (/Users/mads/Library/Developer/Toolchains/swift-6.2-RELEASE.xctoolchain/usr/bin/swift-frontend+0x1000396b4)
#28 0x0000000192985d54
Expected behavior
We don't expect the crash to happen. It compiles fine in debug mode.
Environment
Apple Swift version 6.2 (swift-6.2-RELEASE)
Target: arm64-apple-macosx26.0
Additional information
No response
Metadata
Metadata
Assignees
Labels
bugA deviation from expected or documented behavior. Also: expected but undesirable behavior.A deviation from expected or documented behavior. Also: expected but undesirable behavior.crashBug: A crash, i.e., an abnormal termination of softwareBug: A crash, i.e., an abnormal termination of softwareparameter packsFeature → generics: Parameter packsFeature → generics: Parameter packs