Undefined behavior: Call argument type mismatches callee parameter type
%25 = call {} bitcast ({} ({}*, {}*, %tydesc**, { i64, %tydesc*, i8*, i8*, i32 } addrspace(1)**)* @_ZN9_ubox_u3217_b6378abf1e661b9814glue_drop_2923E to {} ({}*, {}*, %tydesc**, { i64, %tydesc*, i8*, i8*, i64 } addrspace(1)**)*)({}* null, {}* null, %tydesc** null, { i64, %tydesc*, i8*, i8*, i64 } addrspace(1)** %3)
From implementing #6778, LLVM's linter spits out this a lot:
This comes from this code: