``` fn foo() -> int { ret alt true { true { 1 } false { fail; } }; } ``` ... produces `mismatched types: expected int but found () (types differ)`