Avatar
omochimetaru 5/30/2022 4:49 AM
いくつか試して -emit-sil してるけど、ジェネリックシグネチャがおかしくみえるのがある
4:52 AM
struct S {} func makePair() -> <T0> (T0, T0) { (S(), S()) }
4:52 AM
// makePair() sil hidden @$s1i8makePairQr_QrtyF : $@convention(thin) @substituted <τ_0_0, τ_0_1> () -> (@out τ_0_0, @out τ_0_1) for <@_opaqueReturnTypeOf("$s1i8makePairQr_QrtyF", 0) __, @_opaqueReturnTypeOf("$s1i8makePairQr_QrtyF", 0) __> { ... }
4:53 AM
swift demangle '$s1i8makePairQr_QrtyF' $s1i8makePairQr_QrtyF ---> i.makePair() -> (some, some)
4:54 AM
これとかシグネチャレベルだとパラメータが2個あるように見える。