]> git.lizzy.rs Git - rust.git/blob - src/test/ui/destructure-trait-ref.stderr
Rollup merge of #101388 - compiler-errors:issue-101376, r=fee1-dead
[rust.git] / src / test / ui / destructure-trait-ref.stderr
1 error[E0033]: type `&dyn T` cannot be dereferenced
2   --> $DIR/destructure-trait-ref.rs:26:9
3    |
4 LL |     let &x = &1isize as &dyn T;
5    |         ^^ type `&dyn T` cannot be dereferenced
6
7 error[E0033]: type `&dyn T` cannot be dereferenced
8   --> $DIR/destructure-trait-ref.rs:27:10
9    |
10 LL |     let &&x = &(&1isize as &dyn T);
11    |          ^^ type `&dyn T` cannot be dereferenced
12
13 error[E0033]: type `Box<dyn T>` cannot be dereferenced
14   --> $DIR/destructure-trait-ref.rs:28:9
15    |
16 LL |     let box x = Box::new(1isize) as Box<dyn T>;
17    |         ^^^^^ type `Box<dyn T>` cannot be dereferenced
18
19 error[E0308]: mismatched types
20   --> $DIR/destructure-trait-ref.rs:32:10
21    |
22 LL |     let &&x = &1isize as &dyn T;
23    |          ^^   ----------------- this expression has type `&dyn T`
24    |          |
25    |          expected trait object `dyn T`, found reference
26    |
27    = note: expected trait object `dyn T`
28                  found reference `&_`
29 help: consider removing `&` from the pattern
30    |
31 LL -     let &&x = &1isize as &dyn T;
32 LL +     let &x = &1isize as &dyn T;
33    |
34
35 error[E0308]: mismatched types
36   --> $DIR/destructure-trait-ref.rs:36:11
37    |
38 LL |     let &&&x = &(&1isize as &dyn T);
39    |           ^^   -------------------- this expression has type `&&dyn T`
40    |           |
41    |           expected trait object `dyn T`, found reference
42    |
43    = note: expected trait object `dyn T`
44                  found reference `&_`
45 help: consider removing `&` from the pattern
46    |
47 LL -     let &&&x = &(&1isize as &dyn T);
48 LL +     let &&x = &(&1isize as &dyn T);
49    |
50
51 error[E0308]: mismatched types
52   --> $DIR/destructure-trait-ref.rs:40:13
53    |
54 LL |     let box box x = Box::new(1isize) as Box<dyn T>;
55    |             ^^^^^   ------------------------------ this expression has type `Box<dyn T>`
56    |             |
57    |             expected trait object `dyn T`, found struct `Box`
58    |
59    = note: expected trait object `dyn T`
60                     found struct `Box<_>`
61
62 error: aborting due to 6 previous errors
63
64 Some errors have detailed explanations: E0033, E0308.
65 For more information about an error, try `rustc --explain E0033`.