// rustfmt-edition: 2018
#![feature(try_blocks)]

fn main() -> Result<(), !> {
    let _x: Option<_> = try {
        4
    };

    try {}
}

fn baz() -> Option<i32> {
    if (1 == 1) {
        return try {
            5
        };
    }

    // test
    let x: Option<()> = try {
        // try blocks are great
    };

    let y: Option<i32> = try {
        6
    }; // comment

    let x: Option<i32> = try { baz()?; baz()?; baz()?; 7 };

    let _ = overflowed_expr(
        x,
        try {
            foo()?;
            bar()?;
        },
    );

    return None;
}
