``` fn a() -> int { alt ret 1 { 2 { 3 } } } fn main() { a(); } ``` Assertion failed: (isa<X>(Val) && "cast<Ty>() argument of incompatible type!"), function cast, file llvm/include/llvm/Support/Casting.h, line 194.