about summary refs log tree commit diff
path: root/tests/ui/mut/mut-pattern-mismatched.rs
blob: d99831bdaf512e950338637b0d7d1817df36252c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
//@ dont-require-annotations: NOTE

fn main() {
    let foo = &mut 1;

    // (separate lines to ensure the spans are accurate)

     let &_ //~  ERROR mismatched types
            //~| NOTE expected mutable reference `&mut {integer}`
            //~| NOTE found reference `&_`
            //~| NOTE types differ in mutability
        = foo;
    let &mut _ = foo;

    let bar = &1;
    let &_ = bar;
    let &mut _ //~  ERROR mismatched types
               //~| NOTE expected reference `&{integer}`
               //~| NOTE found mutable reference `&mut _`
               //~| NOTE types differ in mutability
         = bar;
}