Avatar
omochimetaru 3/1/2018 8:36 AM
%3 = open_existential_addr immutable_access %2 : $*Animal to $*@opened("5DF3A8B4-1D27-11E8-8379-DCA9048BCDF8") Animal // users: %5, %5, %4 %4 = witness_method $@opened("5DF3A8B4-1D27-11E8-8379-DCA9048BCDF8") Animal, #Animal.speak!1 : <Self where Self : Animal> (Self) -> () -> (), %3 : $*@opened("5DF3A8B4-1D27-11E8-8379-DCA9048BCDF8") Animal : $@convention(witness_method) <τ_0_0 where τ_0_0 : Animal> (@in_guaranteed τ_0_0) -> () // type-defs: %3; user: %5 %5 = apply %4<@opened("5DF3A8B4-1D27-11E8-8379-DCA9048BCDF8") Animal>(%3) : $@convention(witness_method) <τ_0_0 where τ_0_0 : Animal> (@in_guaranteed τ_0_0) -> () // type-defs: %3
8:37 AM
これってCatがstructなんだから呼び出し削除できそうだけど・・・