| error[E0308]: mismatched types |
| --> $DIR/coerce-expect-unsized-ascribed.rs:9:27 |
| | |
| LL | let _ = type_ascribe!(Box::new({ [1, 2, 3] }), Box<[i32]>); |
| | ^^^^^^^^^^^^^^^^^^^^^^^ expected `Box<[i32]>`, found `Box<[i32; 3]>` |
| | |
| = note: expected struct `Box<[i32]>` |
| found struct `Box<[i32; 3]>` |
| |
| error[E0308]: mismatched types |
| --> $DIR/coerce-expect-unsized-ascribed.rs:10:27 |
| | |
| LL | let _ = type_ascribe!(Box::new( if true { [1, 2, 3] } else { [1, 3, 4] }), Box<[i32]>); |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box<[i32]>`, found `Box<[i32; 3]>` |
| | |
| = note: expected struct `Box<[i32]>` |
| found struct `Box<[i32; 3]>` |
| |
| error[E0308]: mismatched types |
| --> $DIR/coerce-expect-unsized-ascribed.rs:12:9 |
| | |
| LL | Box::new( match true { true => [1, 2, 3], false => [1, 3, 4] }), Box<[i32]>); |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box<[i32]>`, found `Box<[i32; 3]>` |
| | |
| = note: expected struct `Box<[i32]>` |
| found struct `Box<[i32; 3]>` |
| |
| error[E0308]: mismatched types |
| --> $DIR/coerce-expect-unsized-ascribed.rs:14:27 |
| | |
| LL | let _ = type_ascribe!(Box::new( { |x| (x as u8) }), Box<dyn Fn(i32) -> _>); |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box<dyn Fn(i32) -> u8>`, found `Box<{closure@...}>` |
| | |
| = note: expected struct `Box<dyn Fn(i32) -> u8>` |
| found struct `Box<{closure@$DIR/coerce-expect-unsized-ascribed.rs:14:39: 14:42}>` |
| |
| error[E0308]: mismatched types |
| --> $DIR/coerce-expect-unsized-ascribed.rs:15:27 |
| | |
| LL | let _ = type_ascribe!(Box::new( if true { false } else { true }), Box<dyn Debug>); |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box<dyn Debug>`, found `Box<bool>` |
| | |
| = note: expected struct `Box<dyn Debug>` |
| found struct `Box<bool>` |
| = help: `bool` implements `Debug` so you could box the found value and coerce it to the trait object `Box<dyn Debug>`, you will have to change the expected type as well |
| |
| error[E0308]: mismatched types |
| --> $DIR/coerce-expect-unsized-ascribed.rs:16:27 |
| | |
| LL | let _ = type_ascribe!(Box::new( match true { true => 'a', false => 'b' }), Box<dyn Debug>); |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Box<dyn Debug>`, found `Box<char>` |
| | |
| = note: expected struct `Box<dyn Debug>` |
| found struct `Box<char>` |
| = help: `char` implements `Debug` so you could box the found value and coerce it to the trait object `Box<dyn Debug>`, you will have to change the expected type as well |
| |
| error[E0308]: mismatched types |
| --> $DIR/coerce-expect-unsized-ascribed.rs:18:27 |
| | |
| LL | let _ = type_ascribe!(&{ [1, 2, 3] }, &[i32]); |
| | ^^^^^^^^^^^^^^ expected `&[i32]`, found `&[i32; 3]` |
| | |
| = note: expected reference `&[i32]` |
| found reference `&[i32; 3]` |
| |
| error[E0308]: mismatched types |
| --> $DIR/coerce-expect-unsized-ascribed.rs:19:27 |
| | |
| LL | let _ = type_ascribe!(&if true { [1, 2, 3] } else { [1, 3, 4] }, &[i32]); |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&[i32]`, found `&[i32; 3]` |
| | |
| = note: expected reference `&[i32]` |
| found reference `&[i32; 3]` |
| |
| error[E0308]: mismatched types |
| --> $DIR/coerce-expect-unsized-ascribed.rs:20:27 |
| | |
| LL | let _ = type_ascribe!(&match true { true => [1, 2, 3], false => [1, 3, 4] }, &[i32]); |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&[i32]`, found `&[i32; 3]` |
| | |
| = note: expected reference `&[i32]` |
| found reference `&[i32; 3]` |
| |
| error[E0308]: mismatched types |
| --> $DIR/coerce-expect-unsized-ascribed.rs:22:27 |
| | |
| LL | let _ = type_ascribe!(&{ |x| (x as u8) }, &dyn Fn(i32) -> _); |
| | ^^^^^^^^^^^^^^^^^^ expected `&dyn Fn(i32) -> u8`, found `&{closure@...}` |
| | |
| = note: expected reference `&dyn Fn(i32) -> u8` |
| found reference `&{closure@$DIR/coerce-expect-unsized-ascribed.rs:22:30: 22:33}` |
| |
| error[E0308]: mismatched types |
| --> $DIR/coerce-expect-unsized-ascribed.rs:23:27 |
| | |
| LL | let _ = type_ascribe!(&if true { false } else { true }, &dyn Debug); |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&dyn Debug`, found `&bool` |
| | |
| = note: expected reference `&dyn Debug` |
| found reference `&bool` |
| = help: `bool` implements `Debug` so you could box the found value and coerce it to the trait object `Box<dyn Debug>`, you will have to change the expected type as well |
| |
| error[E0308]: mismatched types |
| --> $DIR/coerce-expect-unsized-ascribed.rs:24:27 |
| | |
| LL | let _ = type_ascribe!(&match true { true => 'a', false => 'b' }, &dyn Debug); |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&dyn Debug`, found `&char` |
| | |
| = note: expected reference `&dyn Debug` |
| found reference `&char` |
| = help: `char` implements `Debug` so you could box the found value and coerce it to the trait object `Box<dyn Debug>`, you will have to change the expected type as well |
| |
| error[E0308]: mismatched types |
| --> $DIR/coerce-expect-unsized-ascribed.rs:26:27 |
| | |
| LL | let _ = type_ascribe!(Box::new([1, 2, 3]), Box<[i32]>); |
| | ^^^^^^^^^^^^^^^^^^^ expected `Box<[i32]>`, found `Box<[i32; 3]>` |
| | |
| = note: expected struct `Box<[i32]>` |
| found struct `Box<[i32; 3]>` |
| |
| error[E0308]: mismatched types |
| --> $DIR/coerce-expect-unsized-ascribed.rs:27:27 |
| | |
| LL | let _ = type_ascribe!(Box::new(|x| (x as u8)), Box<dyn Fn(i32) -> _>); |
| | ^^^^^^^^^^^^^^^^^^^^^^^ expected `Box<dyn Fn(i32) -> u8>`, found `Box<{closure@...}>` |
| | |
| = note: expected struct `Box<dyn Fn(i32) -> u8>` |
| found struct `Box<{closure@$DIR/coerce-expect-unsized-ascribed.rs:27:36: 27:39}>` |
| |
| error: aborting due to 14 previous errors |
| |
| For more information about this error, try `rustc --explain E0308`. |