]> git.lizzy.rs Git - rust.git/blob - src/test/ui/deref-suggestion.rs
Auto merge of #81507 - weiznich:add_diesel_to_cargo_test, r=Mark-Simulacrum
[rust.git] / src / test / ui / deref-suggestion.rs
1 macro_rules! borrow {
2     ($x:expr) => { &$x } //~ ERROR mismatched types
3 }
4
5 fn foo(_: String) {}
6
7 fn foo2(s: &String) {
8     foo(s);
9     //~^ ERROR mismatched types
10 }
11
12 fn foo3(_: u32) {}
13 fn foo4(u: &u32) {
14     foo3(u);
15     //~^ ERROR mismatched types
16 }
17
18 struct S<'a> {
19     u: &'a u32,
20 }
21
22 struct R {
23     i: u32,
24 }
25
26 fn main() {
27     let s = String::new();
28     let r_s = &s;
29     foo2(r_s);
30     foo(&"aaa".to_owned());
31     //~^ ERROR mismatched types
32     foo(&mut "aaa".to_owned());
33     //~^ ERROR mismatched types
34     foo3(borrow!(0));
35     foo4(&0);
36     assert_eq!(3i32, &3i32);
37     //~^ ERROR mismatched types
38     let u = 3;
39     let s = S { u };
40     //~^ ERROR mismatched types
41     let s = S { u: u };
42     //~^ ERROR mismatched types
43     let i = &4;
44     let r = R { i };
45     //~^ ERROR mismatched types
46     let r = R { i: i };
47     //~^ ERROR mismatched types
48 }