| // rustfmt-edition: 2018 | |
| #![feature(try_blocks_heterogeneous)] | |
| fn main() -> Result<(), !> { | |
| let _x = try bikeshed Option<_> { 4 }; | |
| try bikeshed Result<_, _> {} | |
| } | |
| fn baz() -> Option<i32> { | |
| if (1 == 1) { | |
| return try bikeshed Option<i32> { 5 }; | |
| } | |
| // test | |
| let x = try bikeshed Option<()> { | |
| // try blocks are great | |
| }; | |
| let y = try bikeshed Option<i32> { 6 }; // comment | |
| let x = try /* Invisible comment */ bikeshed Option<()> {}; | |
| let x = try bikeshed /* Invisible comment */ Option<()> {}; | |
| let x = try bikeshed Option<()> /* Invisible comment */ {}; | |
| let x = try bikeshed Option<i32> { | |
| baz()?; | |
| baz()?; | |
| baz()?; | |
| 7 | |
| }; | |
| let x = try bikeshed Foo<Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar> { | |
| 1 + 1 + 1 | |
| }; | |
| let x = | |
| try bikeshed Foo<Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar> {}; | |
| let x = try bikeshed Result< | |
| VeryVeryVeryVeryVeryLongTypeForSuccess, | |
| VeryVeryVeryVeryVeryLongTypeForFailure, | |
| > { | |
| }; | |
| let _ = overflowed_expr(x, try bikeshed Option<_> { | |
| foo()?; | |
| bar()?; | |
| }); | |
| return None; | |
| } |