error[E0308]: mismatched types
  --> $DIR/coerce-expect-unsized-ascribed.rs:9:13
   |
LL |     let _ = box { [1, 2, 3] }: Box<[i32]>;
   |             ^^^^^^^^^^^^^^^^^ expected slice `[i32]`, found array `[i32; 3]`
   |
   = note: expected struct `Box<[i32]>`
              found struct `Box<[i32; 3]>`

error[E0308]: mismatched types
  --> $DIR/coerce-expect-unsized-ascribed.rs:10:13
   |
LL |     let _ = box if true { [1, 2, 3] } else { [1, 3, 4] }: Box<[i32]>;
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected slice `[i32]`, found array `[i32; 3]`
   |
   = note: expected struct `Box<[i32]>`
              found struct `Box<[i32; 3]>`

error[E0308]: mismatched types
  --> $DIR/coerce-expect-unsized-ascribed.rs:11:13
   |
LL |     let _ = box match true { true => [1, 2, 3], false => [1, 3, 4] }: Box<[i32]>;
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected slice `[i32]`, found array `[i32; 3]`
   |
   = note: expected struct `Box<[i32]>`
              found struct `Box<[i32; 3]>`

error[E0308]: mismatched types
  --> $DIR/coerce-expect-unsized-ascribed.rs:13:13
   |
LL |     let _ = box { |x| (x as u8) }: Box<dyn Fn(i32) -> _>;
   |             ^^^^^^^^^^^^^^^^^^^^^ expected trait object `dyn Fn`, found closure
   |
   = note: expected struct `Box<dyn Fn(i32) -> u8>`
              found struct `Box<[closure@$DIR/coerce-expect-unsized-ascribed.rs:13:19: 13:32]>`

error[E0308]: mismatched types
  --> $DIR/coerce-expect-unsized-ascribed.rs:14:13
   |
LL |     let _ = box if true { false } else { true }: Box<dyn Debug>;
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected trait object `dyn Debug`, found `bool`
   |
   = note: expected struct `Box<dyn Debug>`
              found struct `Box<bool>`

error[E0308]: mismatched types
  --> $DIR/coerce-expect-unsized-ascribed.rs:15:13
   |
LL |     let _ = box match true { true => 'a', false => 'b' }: Box<dyn Debug>;
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected trait object `dyn Debug`, found `char`
   |
   = note: expected struct `Box<dyn Debug>`
              found struct `Box<char>`

error[E0308]: mismatched types
  --> $DIR/coerce-expect-unsized-ascribed.rs:17:13
   |
LL |     let _ = &{ [1, 2, 3] }: &[i32];
   |             ^^^^^^^^^^^^^^ expected slice `[i32]`, found array `[i32; 3]`
   |
   = note: expected reference `&[i32]`
              found reference `&[i32; 3]`

error[E0308]: mismatched types
  --> $DIR/coerce-expect-unsized-ascribed.rs:18:13
   |
LL |     let _ = &if true { [1, 2, 3] } else { [1, 3, 4] }: &[i32];
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected slice `[i32]`, found array `[i32; 3]`
   |
   = note: expected reference `&[i32]`
              found reference `&[i32; 3]`

error[E0308]: mismatched types
  --> $DIR/coerce-expect-unsized-ascribed.rs:19:13
   |
LL |     let _ = &match true { true => [1, 2, 3], false => [1, 3, 4] }: &[i32];
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected slice `[i32]`, found array `[i32; 3]`
   |
   = note: expected reference `&[i32]`
              found reference `&[i32; 3]`

error[E0308]: mismatched types
  --> $DIR/coerce-expect-unsized-ascribed.rs:21:13
   |
LL |     let _ = &{ |x| (x as u8) }: &dyn Fn(i32) -> _;
   |             ^^^^^^^^^^^^^^^^^^ expected trait object `dyn Fn`, found closure
   |
   = note: expected reference `&dyn Fn(i32) -> u8`
              found reference `&[closure@$DIR/coerce-expect-unsized-ascribed.rs:21:16: 21:29]`

error[E0308]: mismatched types
  --> $DIR/coerce-expect-unsized-ascribed.rs:22:13
   |
LL |     let _ = &if true { false } else { true }: &dyn Debug;
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected trait object `dyn Debug`, found `bool`
   |
   = note: expected reference `&dyn Debug`
              found reference `&bool`

error[E0308]: mismatched types
  --> $DIR/coerce-expect-unsized-ascribed.rs:23:13
   |
LL |     let _ = &match true { true => 'a', false => 'b' }: &dyn Debug;
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected trait object `dyn Debug`, found `char`
   |
   = note: expected reference `&dyn Debug`
              found reference `&char`

error[E0308]: mismatched types
  --> $DIR/coerce-expect-unsized-ascribed.rs:25:13
   |
LL |     let _ = Box::new([1, 2, 3]): Box<[i32]>;
   |             ^^^^^^^^^^^^^^^^^^^ expected slice `[i32]`, found array `[i32; 3]`
   |
   = note: expected struct `Box<[i32]>`
              found struct `Box<[i32; 3]>`

error[E0308]: mismatched types
  --> $DIR/coerce-expect-unsized-ascribed.rs:26:13
   |
LL |     let _ = Box::new(|x| (x as u8)): Box<dyn Fn(i32) -> _>;
   |             ^^^^^^^^^^^^^^^^^^^^^^^ expected trait object `dyn Fn`, found closure
   |
   = note: expected struct `Box<dyn Fn(i32) -> u8>`
              found struct `Box<[closure@$DIR/coerce-expect-unsized-ascribed.rs:26:22: 26:35]>`

error: aborting due to 14 previous errors

For more information about this error, try `rustc --explain E0308`.
