Skip to content

SIL verification fails when compiling swift-java in release mode. #84899

@madsodgaard

Description

@madsodgaard

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

No one assigned

    Labels

    bugA deviation from expected or documented behavior. Also: expected but undesirable behavior.crashBug: A crash, i.e., an abnormal termination of softwareparameter packsFeature → generics: Parameter packs

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions