Open tayloraswift opened 2 years ago
package plugin seems to be running into a compiler crash:
error: plugin compilation failed: <PluginCompilationResult( exitStatus: terminated(code: 1), stdout: , stderr: error: compile command failed due to signal 6 (use -v to see invocation) SIL verification failed: external declarations of SILFunctions with shared visibility is not allowed: SingleFunction || !hasSharedVisibility(RefF->getLinkage()) || RefF->hasForeignBody() Verifying instruction: -> // function_ref specialized __RawDictionaryStorage.find<A>(_:) %39 = function_ref @$ss22__RawDictionaryStorageC4findys10_HashTableV6BucketV6bucket_Sb5foundtxSHRzlFSS_Tgq5 : $@convention(method) (@guaranteed String, @guaranteed __RawDictionaryStorage) -> (_HashTable.Bucket, Bool) // user: %48 %48 = apply %39(%46, %18) : $@convention(method) (@guaranteed String, @guaranteed __RawDictionaryStorage) -> (_HashTable.Bucket, Bool) // users: %50, %49 In function: // specialized Dictionary.init(dictionaryLiteral:) sil shared_external [serializable] [readonly] [_semantics "optimize.sil.specialize.generic.size.never"] @$sSD17dictionaryLiteralSDyxq_Gx_q_td_tcfCSS_SSTgq5 : $@convention(method) (@owned Array<(String, String)>, @thin Dictionary<String, String>.Type) -> @owned Dictionary<String, String> { // %0 // users: %93, %88, %43, %22, %3 bb0(%0 : $Array<(String, String)>, %1 : $@thin Dictionary<String, String>.Type): // function_ref specialized Array._getCount() %2 = function_ref @$sSa9_getCountSiyFSS_SSt_Tgq5 : $@convention(method) (@guaranteed Array<(String, String)>) -> Int // user: %3 %3 = apply %2(%0) : $@convention(method) (@guaranteed Array<(String, String)>) -> Int // users: %10, %5 %4 = integer_literal $Builtin.Int64, 0 // users: %40, %34, %6 %5 = struct_extract %3 : $Int, #Int._value // users: %85, %34, %6 %6 = builtin "cmp_eq_Int64"(%5 : $Builtin.Int64, %4 : $Builtin.Int64) : $Builtin.Int1 // users: %20, %7 cond_br %6, bb2, bb1 // id: %7 bb1: // Preds: bb0 %8 = metatype $@thick _DictionaryStorage<String, String>.Type // user: %10 // function_ref static _DictionaryStorage.allocate(capacity:) %9 = function_ref @$ss18_DictionaryStorageC8allocate8capacityAByxq_GSi_tFZ : $@convention(method) <τ_0_0, τ_0_1 where τ_0_0 : Hashable> (Int, @thick _DictionaryStorage<τ_0_0, τ_0_1>.Type) -> @owned _DictionaryStorage<τ_0_0, τ_0_1> // user: %10 %10 = apply %9<String, String>(%3, %8) : $@convention(method) <τ_0_0, τ_0_1 where τ_0_0 : Hashable> (Int, @thick _DictionaryStorage<τ_0_0, τ_0_1>.Type) -> @owned _DictionaryStorage<τ_0_0, τ_0_1> // user: %11 %11 = upcast %10 : $_DictionaryStorage<String, String> to $__RawDictionaryStorage // user: %12 br bb3(%11 : $__RawDictionaryStorage) // id: %12 bb2: // Preds: bb0 %13 = global_addr @_swiftEmptyDictionarySingleton : $*_SwiftEmptyDictionarySingleton // user: %14 %14 = address_to_pointer %13 : $*_SwiftEmptyDictionarySingleton to $Builtin.RawPointer // user: %15 %15 = raw_pointer_to_ref %14 : $Builtin.RawPointer to $__EmptyDictionarySingleton // user: %16 %16 = upcast %15 : $__EmptyDictionarySingleton to $__RawDictionaryStorage // user: %17 br bb3(%16 : $__RawDictionaryStorage) // id: %17 // %18 // users: %98, %97, %92, %48, %36, %30, %29, %28, %25, %19 bb3(%18 : $__RawDictionaryStorage): // Preds: bb2 bb1 %19 = struct $_NativeDictionary<String, String> (%18 : $__RawDictionaryStorage) // user: %77 cond_br %6, bb8, bb4 // id: %20 bb4: // Preds: bb3 // function_ref specialized Array._hoistableIsNativeTypeChecked() %21 = function_ref @$sSa29_hoistableIsNativeTypeCheckedSbyFSS_SSt_Tgq5 : $@convention(method) (@guaranteed Array<(String, String)>) -> Bool // user: %22 %22 = apply %21(%0) : $@convention(method) (@guaranteed Array<(String, String)>) -> Bool // user: %43 %23 = integer_literal $Builtin.Int64, 1 // users: %79, %60, %44 %24 = integer_literal $Builtin.Int1, -1 // users: %79, %44 %25 = ref_tail_addr %18 : $__RawDictionaryStorage, $_UnsafeBitset.Word // user: %58 %26 = integer_literal $Builtin.Int64, 64 // users: %56, %55 %27 = integer_literal $Builtin.Int64, 63 // user: %59 %28 = ref_element_addr %18 : $__RawDictionaryStorage, #__RawDictionaryStorage._rawKeys // user: %31 %29 = ref_element_addr %18 : $__RawDictionaryStorage, #__RawDictionaryStorage._rawValues // user: %32 %30 = ref_element_addr %18 : $__RawDictionaryStorage, #__RawDictionaryStorage._count // users: %84, %33 %31 = struct_element_addr %28 : $*UnsafeMutableRawPointer, #UnsafeMutableRawPointer._rawValue // user: %68 %32 = struct_element_addr %29 : $*UnsafeMutableRawPointer, #UnsafeMutableRawPointer._rawValue // user: %73 %33 = struct_element_addr %30 : $*Int, #Int._value // user: %78 %34 = builtin "cmp_sge_Int64"(%4 : $Builtin.Int64, %5 : $Builtin.Int64) : $Builtin.Int1 // user: %35 cond_fail %34 : $Builtin.Int1, "loop induction variable overflowed" // id: %35 strong_retain %18 : $__RawDictionaryStorage // id: %36 %37 = struct $_DependenceToken () // user: %43 // function_ref specialized Array._getElement(_:wasNativeTypeChecked:matchingSubscriptCheck:) %38 = function_ref @$sSa11_getElement_20wasNativeTypeChecked22matchingSubscriptCheckxSi_Sbs16_DependenceTokenVtFSS_SSt_Tgq5 : $@convention(method) (Int, Bool, _DependenceToken, @guaranteed Array<(String, String)>) -> @owned (String, String) // user: %43 // function_ref specialized __RawDictionaryStorage.find<A>(_:) %39 = function_ref @$ss22__RawDictionaryStorageC4findys10_HashTableV6BucketV6bucket_Sb5foundtxSHRzlFSS_Tgq5 : $@convention(method) (@guaranteed String, @guaranteed __RawDictionaryStorage) -> (_HashTable.Bucket, Bool) // user: %48 br bb5(%4 : $Builtin.Int64) // id: %40 // %41 // users: %44, %42 bb5(%41 : $Builtin.Int64): // Preds: bb6 bb4 %42 = struct $Int (%41 : $Builtin.Int64) // user: %43 %43 = apply %38(%42, %22, %37, %0) : $@convention(method) (Int, Bool, _DependenceToken, @guaranteed Array<(String, String)>) -> @owned (String, String) // users: %47, %46 %44 = builtin "sadd_with_overflow_Int64"(%41 : $Builtin.Int64, %23 : $Builtin.Int64, %24 : $Builtin.Int1) : $(Builtin.Int64, Builtin.Int1) // user: %45 %45 = tuple_extract %44 : $(Builtin.Int64, Builtin.Int1), 0 // users: %87, %85 %46 = tuple_extract %43 : $(String, String), 0 // users: %72, %48 %47 = tuple_extract %43 : $(String, String), 1 // user: %76 %48 = apply %39(%46, %18) : $@convention(method) (@guaranteed String, @guaranteed __RawDictionaryStorage) -> (_HashTable.Bucket, Bool) // users: %50, %49 %49 = tuple_extract %48 : $(_HashTable.Bucket, Bool), 0 // user: %53 %50 = tuple_extract %48 : $(_HashTable.Bucket, Bool), 1 // user: %51 %51 = struct_extract %50 : $Bool, #Bool._value // user: %52 cond_fail %51 : $Builtin.Int1, "Dictionary literal contains duplicate keys" // id: %52 %53 = struct_extract %49 : $_HashTable.Bucket, #_HashTable.Bucket.offset // user: %54 %54 = struct_extract %53 : $Int, #Int._value // users: %69, %56, %55 %55 = builtin "udiv_Int64"(%54 : $Builtin.Int64, %26 : $Builtin.Int64) : $Builtin.Int64 // user: %57 %56 = builtin "urem_Int64"(%54 : $Builtin.Int64, %26 : $Builtin.Int64) : $Builtin.Int64 // user: %59 %57 = builtin "truncOrBitCast_Int64_Word"(%55 : $Builtin.Int64) : $Builtin.Word // user: %58 %58 = index_addr %25 : $*_UnsafeBitset.Word, %57 : $Builtin.Word // users: %67, %61 %59 = builtin "and_Int64"(%56 : $Builtin.Int64, %27 : $Builtin.Int64) : $Builtin.Int64 // user: %60 %60 = builtin "shl_Int64"(%23 : $Builtin.Int64, %59 : $Builtin.Int64) : $Builtin.Int64 // user: %64 %61 = struct_element_addr %58 : $*_UnsafeBitset.Word, #_UnsafeBitset.Word.value // user: %62 %62 = struct_element_addr %61 : $*UInt, #UInt._value // user: %63 %63 = load %62 : $*Builtin.Int64 // user: %64 %64 = builtin "or_Int64"(%63 : $Builtin.Int64, %60 : $Builtin.Int64) : $Builtin.Int64 // user: %65 %65 = struct $UInt (%64 : $Builtin.Int64) // user: %66 %66 = struct $_UnsafeBitset.Word (%65 : $UInt) // user: %67 store %66 to %58 : $*_UnsafeBitset.Word // id: %67 %68 = load %31 : $*Builtin.RawPointer // user: %70 %69 = builtin "truncOrBitCast_Int64_Word"(%54 : $Builtin.Int64) : $Builtin.Word // users: %75, %71 %70 = pointer_to_address %68 : $Builtin.RawPointer to [strict] $*String // user: %71 %71 = index_addr %70 : $*String, %69 : $Builtin.Word // user: %72 store %46 to %71 : $*String // id: %72 %73 = load %32 : $*Builtin.RawPointer // user: %74 %74 = pointer_to_address %73 : $Builtin.RawPointer to [strict] $*String // user: %75 %75 = index_addr %74 : $*String, %69 : $Builtin.Word // user: %76 store %47 to %75 : $*String // id: %76 fix_lifetime %19 : $_NativeDictionary<String, String> // id: %77 %78 = load %33 : $*Builtin.Int64 // user: %79 %79 = builtin "sadd_with_overflow_Int64"(%78 : $Builtin.Int64, %23 : $Builtin.Int64, %24 : $Builtin.Int1) : $(Builtin.Int64, Builtin.Int1) // users: %81, %80 %80 = tuple_extract %79 : $(Builtin.Int64, Builtin.Int1), 0 // user: %83 %81 = tuple_extract %79 : $(Builtin.Int64, Builtin.Int1), 1 // user: %82 cond_fail %81 : $Builtin.Int1, "arithmetic overflow" // id: %82 %83 = struct $Int (%80 : $Builtin.Int64) // user: %84 store %83 to %30 : $*Int // id: %84 %85 = builtin "cmp_eq_Int64"(%45 : $Builtin.Int64, %5 : $Builtin.Int64) : $Builtin.Int1 // user: %86 cond_br %85, bb7, bb6 // id: %86 bb6: // Preds: bb5 br bb5(%45 : $Builtin.Int64) // id: %87 bb7: // Preds: bb5 %88 = struct_extract %0 : $Array<(String, String)>, #Array._buffer // user: %89 %89 = struct_extract %88 : $_ContiguousArrayBuffer<(String, String)>, #_ContiguousArrayBuffer._storage // user: %90 strong_release %89 : $__ContiguousArrayStorageBase // id: %90 br bb9 // id: %91 bb8: // Preds: bb3 strong_retain %18 : $__RawDictionaryStorage // id: %92 %93 = struct_extract %0 : $Array<(String, String)>, #Array._buffer // user: %94 %94 = struct_extract %93 : $_ContiguousArrayBuffer<(String, String)>, #_ContiguousArrayBuffer._storage // user: %95 strong_release %94 : $__ContiguousArrayStorageBase // id: %95 br bb9 // id: %96 bb9: // Preds: bb8 bb7 strong_release %18 : $__RawDictionaryStorage // id: %97 %98 = unchecked_ref_cast %18 : $__RawDictionaryStorage to $Builtin.BridgeObject // user: %99 %99 = struct $_BridgeStorage<__RawDictionaryStorage> (%98 : $Builtin.BridgeObject) // user: %100 %100 = struct $Dictionary<String, String>._Variant (%99 : $_BridgeStorage<__RawDictionaryStorage>) // user: %101 %101 = struct $Dictionary<String, String> (%100 : $Dictionary<String, String>._Variant) // user: %102 return %101 : $Dictionary<String, String> // id: %102 } // end sil function '$sSD17dictionaryLiteralSDyxq_Gx_q_td_tcfCSS_SSTgq5' Please submit a bug report (https://swift.org/contributing/#reporting-bugs) and include the project and the crash backtrace.
package plugin seems to be running into a compiler crash: