rust/tests/ui/try-trait/try-on-option-diagnostics.rs

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

48 lines
737 B
Rust
Raw Normal View History

// edition:2018
2022-01-19 09:24:49 -06:00
fn main() {}
fn a_function() -> u32 {
let x: Option<u32> = None;
x?; //~ ERROR the `?` operator
22
}
fn a_closure() -> u32 {
let a_closure = || {
let x: Option<u32> = None;
x?; //~ ERROR the `?` operator
22
};
a_closure()
}
fn a_method() -> u32 {
struct S;
impl S {
fn a_method() {
let x: Option<u32> = None;
x?; //~ ERROR the `?` operator
}
}
S::a_method();
22
}
fn a_trait_method() -> u32 {
struct S;
trait T {
fn a_trait_method() {
let x: Option<u32> = None;
x?; //~ ERROR the `?` operator
}
}
impl T for S { }
S::a_trait_method();
22
}