error: attempt to divide with overflow
  --> $DIR/issue-8460-const2.rs:9:36
   |
LL |     assert!(thread::spawn(move|| { isize::MIN / -1; }).join().is_err());
   |                                    ^^^^^^^^^^^^^^^
   |
note: lint level defined here
  --> $DIR/issue-8460-const2.rs:3:9
   |
LL | #![deny(const_err)]
   |         ^^^^^^^^^

error: attempt to divide with overflow
  --> $DIR/issue-8460-const2.rs:11:36
   |
LL |     assert!(thread::spawn(move|| { i8::MIN / -1; }).join().is_err());
   |                                    ^^^^^^^^^^^^

error: attempt to divide with overflow
  --> $DIR/issue-8460-const2.rs:13:36
   |
LL |     assert!(thread::spawn(move|| { i16::MIN / -1; }).join().is_err());
   |                                    ^^^^^^^^^^^^^

error: attempt to divide with overflow
  --> $DIR/issue-8460-const2.rs:15:36
   |
LL |     assert!(thread::spawn(move|| { i32::MIN / -1; }).join().is_err());
   |                                    ^^^^^^^^^^^^^

error: attempt to divide with overflow
  --> $DIR/issue-8460-const2.rs:17:36
   |
LL |     assert!(thread::spawn(move|| { i64::MIN / -1; }).join().is_err());
   |                                    ^^^^^^^^^^^^^

error: attempt to divide by zero
  --> $DIR/issue-8460-const2.rs:19:36
   |
LL |     assert!(thread::spawn(move|| { 1isize / 0; }).join().is_err());
   |                                    ^^^^^^^^^^

error: this expression will panic at runtime
  --> $DIR/issue-8460-const2.rs:19:36
   |
LL |     assert!(thread::spawn(move|| { 1isize / 0; }).join().is_err());
   |                                    ^^^^^^^^^^ attempt to divide by zero

error: attempt to divide by zero
  --> $DIR/issue-8460-const2.rs:22:36
   |
LL |     assert!(thread::spawn(move|| { 1i8 / 0; }).join().is_err());
   |                                    ^^^^^^^

error: this expression will panic at runtime
  --> $DIR/issue-8460-const2.rs:22:36
   |
LL |     assert!(thread::spawn(move|| { 1i8 / 0; }).join().is_err());
   |                                    ^^^^^^^ attempt to divide by zero

error: attempt to divide by zero
  --> $DIR/issue-8460-const2.rs:25:36
   |
LL |     assert!(thread::spawn(move|| { 1i16 / 0; }).join().is_err());
   |                                    ^^^^^^^^

error: this expression will panic at runtime
  --> $DIR/issue-8460-const2.rs:25:36
   |
LL |     assert!(thread::spawn(move|| { 1i16 / 0; }).join().is_err());
   |                                    ^^^^^^^^ attempt to divide by zero

error: attempt to divide by zero
  --> $DIR/issue-8460-const2.rs:28:36
   |
LL |     assert!(thread::spawn(move|| { 1i32 / 0; }).join().is_err());
   |                                    ^^^^^^^^

error: this expression will panic at runtime
  --> $DIR/issue-8460-const2.rs:28:36
   |
LL |     assert!(thread::spawn(move|| { 1i32 / 0; }).join().is_err());
   |                                    ^^^^^^^^ attempt to divide by zero

error: attempt to divide by zero
  --> $DIR/issue-8460-const2.rs:31:36
   |
LL |     assert!(thread::spawn(move|| { 1i64 / 0; }).join().is_err());
   |                                    ^^^^^^^^

error: this expression will panic at runtime
  --> $DIR/issue-8460-const2.rs:31:36
   |
LL |     assert!(thread::spawn(move|| { 1i64 / 0; }).join().is_err());
   |                                    ^^^^^^^^ attempt to divide by zero

error: attempt to calculate the remainder with overflow
  --> $DIR/issue-8460-const2.rs:34:36
   |
LL |     assert!(thread::spawn(move|| { isize::MIN % -1; }).join().is_err());
   |                                    ^^^^^^^^^^^^^^^

error: attempt to calculate the remainder with overflow
  --> $DIR/issue-8460-const2.rs:36:36
   |
LL |     assert!(thread::spawn(move|| { i8::MIN % -1; }).join().is_err());
   |                                    ^^^^^^^^^^^^

error: attempt to calculate the remainder with overflow
  --> $DIR/issue-8460-const2.rs:38:36
   |
LL |     assert!(thread::spawn(move|| { i16::MIN % -1; }).join().is_err());
   |                                    ^^^^^^^^^^^^^

error: attempt to calculate the remainder with overflow
  --> $DIR/issue-8460-const2.rs:40:36
   |
LL |     assert!(thread::spawn(move|| { i32::MIN % -1; }).join().is_err());
   |                                    ^^^^^^^^^^^^^

error: attempt to calculate the remainder with overflow
  --> $DIR/issue-8460-const2.rs:42:36
   |
LL |     assert!(thread::spawn(move|| { i64::MIN % -1; }).join().is_err());
   |                                    ^^^^^^^^^^^^^

error: attempt to calculate the remainder with a divisor of zero
  --> $DIR/issue-8460-const2.rs:44:36
   |
LL |     assert!(thread::spawn(move|| { 1isize % 0; }).join().is_err());
   |                                    ^^^^^^^^^^

error: this expression will panic at runtime
  --> $DIR/issue-8460-const2.rs:44:36
   |
LL |     assert!(thread::spawn(move|| { 1isize % 0; }).join().is_err());
   |                                    ^^^^^^^^^^ attempt to calculate the remainder with a divisor of zero

error: attempt to calculate the remainder with a divisor of zero
  --> $DIR/issue-8460-const2.rs:47:36
   |
LL |     assert!(thread::spawn(move|| { 1i8 % 0; }).join().is_err());
   |                                    ^^^^^^^

error: this expression will panic at runtime
  --> $DIR/issue-8460-const2.rs:47:36
   |
LL |     assert!(thread::spawn(move|| { 1i8 % 0; }).join().is_err());
   |                                    ^^^^^^^ attempt to calculate the remainder with a divisor of zero

error: attempt to calculate the remainder with a divisor of zero
  --> $DIR/issue-8460-const2.rs:50:36
   |
LL |     assert!(thread::spawn(move|| { 1i16 % 0; }).join().is_err());
   |                                    ^^^^^^^^

error: this expression will panic at runtime
  --> $DIR/issue-8460-const2.rs:50:36
   |
LL |     assert!(thread::spawn(move|| { 1i16 % 0; }).join().is_err());
   |                                    ^^^^^^^^ attempt to calculate the remainder with a divisor of zero

error: attempt to calculate the remainder with a divisor of zero
  --> $DIR/issue-8460-const2.rs:53:36
   |
LL |     assert!(thread::spawn(move|| { 1i32 % 0; }).join().is_err());
   |                                    ^^^^^^^^

error: this expression will panic at runtime
  --> $DIR/issue-8460-const2.rs:53:36
   |
LL |     assert!(thread::spawn(move|| { 1i32 % 0; }).join().is_err());
   |                                    ^^^^^^^^ attempt to calculate the remainder with a divisor of zero

error: attempt to calculate the remainder with a divisor of zero
  --> $DIR/issue-8460-const2.rs:56:36
   |
LL |     assert!(thread::spawn(move|| { 1i64 % 0; }).join().is_err());
   |                                    ^^^^^^^^

error: this expression will panic at runtime
  --> $DIR/issue-8460-const2.rs:56:36
   |
LL |     assert!(thread::spawn(move|| { 1i64 % 0; }).join().is_err());
   |                                    ^^^^^^^^ attempt to calculate the remainder with a divisor of zero

error: aborting due to 30 previous errors

