//! returns: 0 //! A coerced error value must use the declared error type's dispatch tag. fn fail() throws (u8) { throw 7; } @default fn main() -> i32 { let mut caught = false; try fail() catch value as u8 { assert value == 7; set caught = true; }; assert caught; return 0; }