``` fn main() { auto t = tup(1, 2, 3); log_err t; } ``` fails to compile with: rustc: /home/lkuper/llvm/include/llvm/Support/Casting.h:202: typename llvm::cast_retty<To, From>::ret_type llvm::cast(const Y&) [with X = llvm::IntegerType, Y = llvm::Type_, typename llvm::cast_retty<To, From>::ret_type = llvm::IntegerType_]: Assertion `isa<X>(Val) && "cast<Ty>() argument of incompatible type!"' failed.