on_cast llvm cast_self
