error[E0308]: mismatched types --> $DIR/coerce-to-bang.rs:16:17 | LL | foo(return, 22, 44); | ^^ expected !, found integral variable | = note: expected type `!` found type `{integer}` error[E0308]: mismatched types --> $DIR/coerce-to-bang.rs:28:13 | LL | foo(22, 44, return); //~ ERROR mismatched types | ^^ expected !, found integral variable | = note: expected type `!` found type `{integer}` error[E0308]: mismatched types --> $DIR/coerce-to-bang.rs:36:12 | LL | foo(a, b, c); // ... and hence a reference to `a` is expected to diverge. | ^ expected !, found integral variable | = note: expected type `!` found type `{integer}` error[E0308]: mismatched types --> $DIR/coerce-to-bang.rs:46:12 | LL | foo(a, b, c); //~ ERROR mismatched types | ^ expected !, found integral variable | = note: expected type `!` found type `{integer}` error[E0308]: mismatched types --> $DIR/coerce-to-bang.rs:55:12 | LL | foo(a, b, c); //~ ERROR mismatched types | ^ expected !, found integral variable | = note: expected type `!` found type `{integer}` error[E0308]: mismatched types --> $DIR/coerce-to-bang.rs:60:21 | LL | let x: [!; 2] = [return, 22]; //~ ERROR mismatched types | ^^^^^^^^^^^^ expected !, found integral variable | = note: expected type `[!; 2]` found type `[{integer}; 2]` error[E0308]: mismatched types --> $DIR/coerce-to-bang.rs:65:22 | LL | let x: [!; 2] = [22, return]; //~ ERROR mismatched types | ^^ expected !, found integral variable | = note: expected type `!` found type `{integer}` error[E0308]: mismatched types --> $DIR/coerce-to-bang.rs:70:37 | LL | let x: (usize, !, usize) = (22, 44, 66); //~ ERROR mismatched types | ^^ expected !, found integral variable | = note: expected type `!` found type `{integer}` error[E0308]: mismatched types --> $DIR/coerce-to-bang.rs:75:41 | LL | let x: (usize, !, usize) = (return, 44, 66); | ^^ expected !, found integral variable | = note: expected type `!` found type `{integer}` error[E0308]: mismatched types --> $DIR/coerce-to-bang.rs:86:37 | LL | let x: (usize, !, usize) = (22, 44, return); //~ ERROR mismatched types | ^^ expected !, found integral variable | = note: expected type `!` found type `{integer}` error: aborting due to 10 previous errors For more information about this error, try `rustc --explain E0308`.