summaryrefslogtreecommitdiffstats
path: root/tests/ui/typeck/issue-89856.fixed
blob: 3e1a006efa06978f80d556ac290144762a0bf19a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// run-rustfix

fn take_str_maybe(_: Option<&str>) { }
fn main() {
    let string = String::from("Hello, world");

    let option: Option<String> = Some(string.clone());
    take_str_maybe(option.as_deref());
    //~^ ERROR: mismatched types [E0308]

    let option_ref = Some(&string);
    take_str_maybe(option_ref.map(|x| x.as_str()));
    //~^ ERROR: mismatched types [E0308]

    let option_ref_ref = option_ref.as_ref();
    take_str_maybe(option_ref_ref.map(|x| x.as_str()));
    //~^ ERROR: mismatched types [E0308]
}