summaryrefslogtreecommitdiffstats
path: root/tests/ui/transmutability/primitives
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/transmutability/primitives')
-rw-r--r--tests/ui/transmutability/primitives/bool.current.stderr (renamed from tests/ui/transmutability/primitives/bool.stderr)9
-rw-r--r--tests/ui/transmutability/primitives/bool.next.stderr18
-rw-r--r--tests/ui/transmutability/primitives/bool.rs4
-rw-r--r--tests/ui/transmutability/primitives/numbers.current.stderr (renamed from tests/ui/transmutability/primitives/numbers.stderr)513
-rw-r--r--tests/ui/transmutability/primitives/numbers.next.stderr858
-rw-r--r--tests/ui/transmutability/primitives/numbers.rs3
-rw-r--r--tests/ui/transmutability/primitives/unit.current.stderr (renamed from tests/ui/transmutability/primitives/unit.stderr)9
-rw-r--r--tests/ui/transmutability/primitives/unit.next.stderr24
-rw-r--r--tests/ui/transmutability/primitives/unit.rs3
9 files changed, 1145 insertions, 296 deletions
diff --git a/tests/ui/transmutability/primitives/bool.stderr b/tests/ui/transmutability/primitives/bool.current.stderr
index 22decf15e..47c8438a2 100644
--- a/tests/ui/transmutability/primitives/bool.stderr
+++ b/tests/ui/transmutability/primitives/bool.current.stderr
@@ -1,12 +1,11 @@
-error[E0277]: `u8` cannot be safely transmuted into `bool` in the defining scope of `assert::Context`.
- --> $DIR/bool.rs:22:35
+error[E0277]: `u8` cannot be safely transmuted into `bool` in the defining scope of `assert::Context`
+ --> $DIR/bool.rs:24:35
|
LL | assert::is_transmutable::<u8, bool>();
- | ^^^^ `u8` cannot be safely transmuted into `bool` in the defining scope of `assert::Context`.
+ | ^^^^ At least one value of `u8` isn't a bit-valid value of `bool`
|
- = help: the trait `BikeshedIntrinsicFrom<u8, assert::Context, Assume { alignment: false, lifetimes: false, safety: true, validity: false }>` is not implemented for `bool`
note: required by a bound in `is_transmutable`
- --> $DIR/bool.rs:12:14
+ --> $DIR/bool.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
diff --git a/tests/ui/transmutability/primitives/bool.next.stderr b/tests/ui/transmutability/primitives/bool.next.stderr
new file mode 100644
index 000000000..47c8438a2
--- /dev/null
+++ b/tests/ui/transmutability/primitives/bool.next.stderr
@@ -0,0 +1,18 @@
+error[E0277]: `u8` cannot be safely transmuted into `bool` in the defining scope of `assert::Context`
+ --> $DIR/bool.rs:24:35
+ |
+LL | assert::is_transmutable::<u8, bool>();
+ | ^^^^ At least one value of `u8` isn't a bit-valid value of `bool`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/bool.rs:14:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context, { Assume::SAFETY }>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0277`.
diff --git a/tests/ui/transmutability/primitives/bool.rs b/tests/ui/transmutability/primitives/bool.rs
index eebb74fff..de77cfc78 100644
--- a/tests/ui/transmutability/primitives/bool.rs
+++ b/tests/ui/transmutability/primitives/bool.rs
@@ -1,8 +1,10 @@
+// revisions: current next
+//[next] compile-flags: -Ztrait-solver=next
+
#![crate_type = "lib"]
#![feature(transmutability)]
#![allow(dead_code)]
#![allow(incomplete_features)]
-
mod assert {
use std::mem::{Assume, BikeshedIntrinsicFrom};
pub struct Context;
diff --git a/tests/ui/transmutability/primitives/numbers.stderr b/tests/ui/transmutability/primitives/numbers.current.stderr
index c04a0e82a..d12e17297 100644
--- a/tests/ui/transmutability/primitives/numbers.stderr
+++ b/tests/ui/transmutability/primitives/numbers.current.stderr
@@ -1,12 +1,11 @@
-error[E0277]: `i8` cannot be safely transmuted into `i16` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:62:40
+error[E0277]: `i8` cannot be safely transmuted into `i16` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:65:40
|
LL | assert::is_transmutable::< i8, i16>();
- | ^^^ `i8` cannot be safely transmuted into `i16` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i8` is smaller than the size of `i16`
|
- = help: the trait `BikeshedIntrinsicFrom<i8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i16`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -14,15 +13,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i8` cannot be safely transmuted into `u16` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:63:40
+error[E0277]: `i8` cannot be safely transmuted into `u16` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:66:40
|
LL | assert::is_transmutable::< i8, u16>();
- | ^^^ `i8` cannot be safely transmuted into `u16` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i8` is smaller than the size of `u16`
|
- = help: the trait `BikeshedIntrinsicFrom<i8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u16`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -30,15 +28,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i8` cannot be safely transmuted into `i32` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:64:40
+error[E0277]: `i8` cannot be safely transmuted into `i32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:67:40
|
LL | assert::is_transmutable::< i8, i32>();
- | ^^^ `i8` cannot be safely transmuted into `i32` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i8` is smaller than the size of `i32`
|
- = help: the trait `BikeshedIntrinsicFrom<i8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i32`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -46,15 +43,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i8` cannot be safely transmuted into `f32` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:65:40
+error[E0277]: `i8` cannot be safely transmuted into `f32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:68:40
|
LL | assert::is_transmutable::< i8, f32>();
- | ^^^ `i8` cannot be safely transmuted into `f32` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i8` is smaller than the size of `f32`
|
- = help: the trait `BikeshedIntrinsicFrom<i8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `f32`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -62,15 +58,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i8` cannot be safely transmuted into `u32` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:66:40
+error[E0277]: `i8` cannot be safely transmuted into `u32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:69:40
|
LL | assert::is_transmutable::< i8, u32>();
- | ^^^ `i8` cannot be safely transmuted into `u32` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i8` is smaller than the size of `u32`
|
- = help: the trait `BikeshedIntrinsicFrom<i8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u32`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -78,15 +73,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i8` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:67:40
+error[E0277]: `i8` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:70:40
|
LL | assert::is_transmutable::< i8, u64>();
- | ^^^ `i8` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i8` is smaller than the size of `u64`
|
- = help: the trait `BikeshedIntrinsicFrom<i8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -94,15 +88,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i8` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:68:40
+error[E0277]: `i8` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:71:40
|
LL | assert::is_transmutable::< i8, i64>();
- | ^^^ `i8` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i8` is smaller than the size of `i64`
|
- = help: the trait `BikeshedIntrinsicFrom<i8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -110,15 +103,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i8` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:69:40
+error[E0277]: `i8` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:72:40
|
LL | assert::is_transmutable::< i8, f64>();
- | ^^^ `i8` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i8` is smaller than the size of `f64`
|
- = help: the trait `BikeshedIntrinsicFrom<i8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `f64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -126,15 +118,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i8` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:70:39
+error[E0277]: `i8` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:73:39
|
LL | assert::is_transmutable::< i8, u128>();
- | ^^^^ `i8` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `i8` is smaller than the size of `u128`
|
- = help: the trait `BikeshedIntrinsicFrom<i8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -142,15 +133,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i8` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:71:39
+error[E0277]: `i8` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:74:39
|
LL | assert::is_transmutable::< i8, i128>();
- | ^^^^ `i8` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `i8` is smaller than the size of `i128`
|
- = help: the trait `BikeshedIntrinsicFrom<i8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -158,15 +148,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u8` cannot be safely transmuted into `i16` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:73:40
+error[E0277]: `u8` cannot be safely transmuted into `i16` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:76:40
|
LL | assert::is_transmutable::< u8, i16>();
- | ^^^ `u8` cannot be safely transmuted into `i16` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u8` is smaller than the size of `i16`
|
- = help: the trait `BikeshedIntrinsicFrom<u8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i16`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -174,15 +163,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u8` cannot be safely transmuted into `u16` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:74:40
+error[E0277]: `u8` cannot be safely transmuted into `u16` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:77:40
|
LL | assert::is_transmutable::< u8, u16>();
- | ^^^ `u8` cannot be safely transmuted into `u16` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u8` is smaller than the size of `u16`
|
- = help: the trait `BikeshedIntrinsicFrom<u8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u16`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -190,15 +178,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u8` cannot be safely transmuted into `i32` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:75:40
+error[E0277]: `u8` cannot be safely transmuted into `i32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:78:40
|
LL | assert::is_transmutable::< u8, i32>();
- | ^^^ `u8` cannot be safely transmuted into `i32` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u8` is smaller than the size of `i32`
|
- = help: the trait `BikeshedIntrinsicFrom<u8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i32`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -206,15 +193,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u8` cannot be safely transmuted into `f32` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:76:40
+error[E0277]: `u8` cannot be safely transmuted into `f32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:79:40
|
LL | assert::is_transmutable::< u8, f32>();
- | ^^^ `u8` cannot be safely transmuted into `f32` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u8` is smaller than the size of `f32`
|
- = help: the trait `BikeshedIntrinsicFrom<u8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `f32`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -222,15 +208,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u8` cannot be safely transmuted into `u32` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:77:40
+error[E0277]: `u8` cannot be safely transmuted into `u32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:80:40
|
LL | assert::is_transmutable::< u8, u32>();
- | ^^^ `u8` cannot be safely transmuted into `u32` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u8` is smaller than the size of `u32`
|
- = help: the trait `BikeshedIntrinsicFrom<u8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u32`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -238,15 +223,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u8` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:78:40
+error[E0277]: `u8` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:81:40
|
LL | assert::is_transmutable::< u8, u64>();
- | ^^^ `u8` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u8` is smaller than the size of `u64`
|
- = help: the trait `BikeshedIntrinsicFrom<u8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -254,15 +238,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u8` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:79:40
+error[E0277]: `u8` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:82:40
|
LL | assert::is_transmutable::< u8, i64>();
- | ^^^ `u8` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u8` is smaller than the size of `i64`
|
- = help: the trait `BikeshedIntrinsicFrom<u8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -270,15 +253,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u8` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:80:40
+error[E0277]: `u8` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:83:40
|
LL | assert::is_transmutable::< u8, f64>();
- | ^^^ `u8` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u8` is smaller than the size of `f64`
|
- = help: the trait `BikeshedIntrinsicFrom<u8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `f64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -286,15 +268,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u8` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:81:39
+error[E0277]: `u8` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:84:39
|
LL | assert::is_transmutable::< u8, u128>();
- | ^^^^ `u8` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `u8` is smaller than the size of `u128`
|
- = help: the trait `BikeshedIntrinsicFrom<u8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -302,15 +283,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u8` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:82:39
+error[E0277]: `u8` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:85:39
|
LL | assert::is_transmutable::< u8, i128>();
- | ^^^^ `u8` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `u8` is smaller than the size of `i128`
|
- = help: the trait `BikeshedIntrinsicFrom<u8, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -318,15 +298,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i16` cannot be safely transmuted into `i32` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:84:40
+error[E0277]: `i16` cannot be safely transmuted into `i32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:87:40
|
LL | assert::is_transmutable::< i16, i32>();
- | ^^^ `i16` cannot be safely transmuted into `i32` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i16` is smaller than the size of `i32`
|
- = help: the trait `BikeshedIntrinsicFrom<i16, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i32`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -334,15 +313,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i16` cannot be safely transmuted into `f32` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:85:40
+error[E0277]: `i16` cannot be safely transmuted into `f32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:88:40
|
LL | assert::is_transmutable::< i16, f32>();
- | ^^^ `i16` cannot be safely transmuted into `f32` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i16` is smaller than the size of `f32`
|
- = help: the trait `BikeshedIntrinsicFrom<i16, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `f32`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -350,15 +328,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i16` cannot be safely transmuted into `u32` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:86:40
+error[E0277]: `i16` cannot be safely transmuted into `u32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:89:40
|
LL | assert::is_transmutable::< i16, u32>();
- | ^^^ `i16` cannot be safely transmuted into `u32` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i16` is smaller than the size of `u32`
|
- = help: the trait `BikeshedIntrinsicFrom<i16, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u32`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -366,15 +343,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i16` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:87:40
+error[E0277]: `i16` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:90:40
|
LL | assert::is_transmutable::< i16, u64>();
- | ^^^ `i16` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i16` is smaller than the size of `u64`
|
- = help: the trait `BikeshedIntrinsicFrom<i16, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -382,15 +358,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i16` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:88:40
+error[E0277]: `i16` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:91:40
|
LL | assert::is_transmutable::< i16, i64>();
- | ^^^ `i16` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i16` is smaller than the size of `i64`
|
- = help: the trait `BikeshedIntrinsicFrom<i16, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -398,15 +373,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i16` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:89:40
+error[E0277]: `i16` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:92:40
|
LL | assert::is_transmutable::< i16, f64>();
- | ^^^ `i16` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i16` is smaller than the size of `f64`
|
- = help: the trait `BikeshedIntrinsicFrom<i16, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `f64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -414,15 +388,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i16` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:90:39
+error[E0277]: `i16` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:93:39
|
LL | assert::is_transmutable::< i16, u128>();
- | ^^^^ `i16` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `i16` is smaller than the size of `u128`
|
- = help: the trait `BikeshedIntrinsicFrom<i16, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -430,15 +403,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i16` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:91:39
+error[E0277]: `i16` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:94:39
|
LL | assert::is_transmutable::< i16, i128>();
- | ^^^^ `i16` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `i16` is smaller than the size of `i128`
|
- = help: the trait `BikeshedIntrinsicFrom<i16, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -446,15 +418,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u16` cannot be safely transmuted into `i32` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:93:40
+error[E0277]: `u16` cannot be safely transmuted into `i32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:96:40
|
LL | assert::is_transmutable::< u16, i32>();
- | ^^^ `u16` cannot be safely transmuted into `i32` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u16` is smaller than the size of `i32`
|
- = help: the trait `BikeshedIntrinsicFrom<u16, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i32`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -462,15 +433,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u16` cannot be safely transmuted into `f32` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:94:40
+error[E0277]: `u16` cannot be safely transmuted into `f32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:97:40
|
LL | assert::is_transmutable::< u16, f32>();
- | ^^^ `u16` cannot be safely transmuted into `f32` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u16` is smaller than the size of `f32`
|
- = help: the trait `BikeshedIntrinsicFrom<u16, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `f32`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -478,15 +448,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u16` cannot be safely transmuted into `u32` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:95:40
+error[E0277]: `u16` cannot be safely transmuted into `u32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:98:40
|
LL | assert::is_transmutable::< u16, u32>();
- | ^^^ `u16` cannot be safely transmuted into `u32` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u16` is smaller than the size of `u32`
|
- = help: the trait `BikeshedIntrinsicFrom<u16, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u32`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -494,15 +463,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u16` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:96:40
+error[E0277]: `u16` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:99:40
|
LL | assert::is_transmutable::< u16, u64>();
- | ^^^ `u16` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u16` is smaller than the size of `u64`
|
- = help: the trait `BikeshedIntrinsicFrom<u16, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -510,15 +478,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u16` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:97:40
+error[E0277]: `u16` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:100:40
|
LL | assert::is_transmutable::< u16, i64>();
- | ^^^ `u16` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u16` is smaller than the size of `i64`
|
- = help: the trait `BikeshedIntrinsicFrom<u16, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -526,15 +493,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u16` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:98:40
+error[E0277]: `u16` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:101:40
|
LL | assert::is_transmutable::< u16, f64>();
- | ^^^ `u16` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u16` is smaller than the size of `f64`
|
- = help: the trait `BikeshedIntrinsicFrom<u16, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `f64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -542,15 +508,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u16` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:99:39
+error[E0277]: `u16` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:102:39
|
LL | assert::is_transmutable::< u16, u128>();
- | ^^^^ `u16` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `u16` is smaller than the size of `u128`
|
- = help: the trait `BikeshedIntrinsicFrom<u16, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -558,15 +523,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u16` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:100:39
+error[E0277]: `u16` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:103:39
|
LL | assert::is_transmutable::< u16, i128>();
- | ^^^^ `u16` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `u16` is smaller than the size of `i128`
|
- = help: the trait `BikeshedIntrinsicFrom<u16, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -574,15 +538,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i32` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:102:40
+error[E0277]: `i32` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:105:40
|
LL | assert::is_transmutable::< i32, u64>();
- | ^^^ `i32` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i32` is smaller than the size of `u64`
|
- = help: the trait `BikeshedIntrinsicFrom<i32, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -590,15 +553,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i32` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:103:40
+error[E0277]: `i32` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:106:40
|
LL | assert::is_transmutable::< i32, i64>();
- | ^^^ `i32` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i32` is smaller than the size of `i64`
|
- = help: the trait `BikeshedIntrinsicFrom<i32, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -606,15 +568,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i32` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:104:40
+error[E0277]: `i32` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:107:40
|
LL | assert::is_transmutable::< i32, f64>();
- | ^^^ `i32` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `i32` is smaller than the size of `f64`
|
- = help: the trait `BikeshedIntrinsicFrom<i32, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `f64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -622,15 +583,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i32` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:105:39
+error[E0277]: `i32` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:108:39
|
LL | assert::is_transmutable::< i32, u128>();
- | ^^^^ `i32` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `i32` is smaller than the size of `u128`
|
- = help: the trait `BikeshedIntrinsicFrom<i32, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -638,15 +598,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i32` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:106:39
+error[E0277]: `i32` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:109:39
|
LL | assert::is_transmutable::< i32, i128>();
- | ^^^^ `i32` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `i32` is smaller than the size of `i128`
|
- = help: the trait `BikeshedIntrinsicFrom<i32, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -654,15 +613,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `f32` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:108:40
+error[E0277]: `f32` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:111:40
|
LL | assert::is_transmutable::< f32, u64>();
- | ^^^ `f32` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `f32` is smaller than the size of `u64`
|
- = help: the trait `BikeshedIntrinsicFrom<f32, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -670,15 +628,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `f32` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:109:40
+error[E0277]: `f32` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:112:40
|
LL | assert::is_transmutable::< f32, i64>();
- | ^^^ `f32` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `f32` is smaller than the size of `i64`
|
- = help: the trait `BikeshedIntrinsicFrom<f32, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -686,15 +643,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `f32` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:110:40
+error[E0277]: `f32` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:113:40
|
LL | assert::is_transmutable::< f32, f64>();
- | ^^^ `f32` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `f32` is smaller than the size of `f64`
|
- = help: the trait `BikeshedIntrinsicFrom<f32, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `f64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -702,15 +658,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `f32` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:111:39
+error[E0277]: `f32` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:114:39
|
LL | assert::is_transmutable::< f32, u128>();
- | ^^^^ `f32` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `f32` is smaller than the size of `u128`
|
- = help: the trait `BikeshedIntrinsicFrom<f32, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -718,15 +673,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `f32` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:112:39
+error[E0277]: `f32` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:115:39
|
LL | assert::is_transmutable::< f32, i128>();
- | ^^^^ `f32` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `f32` is smaller than the size of `i128`
|
- = help: the trait `BikeshedIntrinsicFrom<f32, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -734,15 +688,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u32` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:114:40
+error[E0277]: `u32` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:117:40
|
LL | assert::is_transmutable::< u32, u64>();
- | ^^^ `u32` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u32` is smaller than the size of `u64`
|
- = help: the trait `BikeshedIntrinsicFrom<u32, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -750,15 +703,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u32` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:115:40
+error[E0277]: `u32` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:118:40
|
LL | assert::is_transmutable::< u32, i64>();
- | ^^^ `u32` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u32` is smaller than the size of `i64`
|
- = help: the trait `BikeshedIntrinsicFrom<u32, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -766,15 +718,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u32` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:116:40
+error[E0277]: `u32` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:119:40
|
LL | assert::is_transmutable::< u32, f64>();
- | ^^^ `u32` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`.
+ | ^^^ The size of `u32` is smaller than the size of `f64`
|
- = help: the trait `BikeshedIntrinsicFrom<u32, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `f64`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -782,15 +733,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u32` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:117:39
+error[E0277]: `u32` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:120:39
|
LL | assert::is_transmutable::< u32, u128>();
- | ^^^^ `u32` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `u32` is smaller than the size of `u128`
|
- = help: the trait `BikeshedIntrinsicFrom<u32, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -798,15 +748,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u32` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:118:39
+error[E0277]: `u32` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:121:39
|
LL | assert::is_transmutable::< u32, i128>();
- | ^^^^ `u32` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `u32` is smaller than the size of `i128`
|
- = help: the trait `BikeshedIntrinsicFrom<u32, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -814,15 +763,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u64` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:120:39
+error[E0277]: `u64` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:123:39
|
LL | assert::is_transmutable::< u64, u128>();
- | ^^^^ `u64` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `u64` is smaller than the size of `u128`
|
- = help: the trait `BikeshedIntrinsicFrom<u64, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -830,15 +778,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `u64` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:121:39
+error[E0277]: `u64` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:124:39
|
LL | assert::is_transmutable::< u64, i128>();
- | ^^^^ `u64` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `u64` is smaller than the size of `i128`
|
- = help: the trait `BikeshedIntrinsicFrom<u64, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -846,15 +793,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i64` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:123:39
+error[E0277]: `i64` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:126:39
|
LL | assert::is_transmutable::< i64, u128>();
- | ^^^^ `i64` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `i64` is smaller than the size of `u128`
|
- = help: the trait `BikeshedIntrinsicFrom<i64, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -862,15 +808,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `i64` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:124:39
+error[E0277]: `i64` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:127:39
|
LL | assert::is_transmutable::< i64, i128>();
- | ^^^^ `i64` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `i64` is smaller than the size of `i128`
|
- = help: the trait `BikeshedIntrinsicFrom<i64, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -878,15 +823,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `f64` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:126:39
+error[E0277]: `f64` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:129:39
|
LL | assert::is_transmutable::< f64, u128>();
- | ^^^^ `f64` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `f64` is smaller than the size of `u128`
|
- = help: the trait `BikeshedIntrinsicFrom<f64, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `u128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@@ -894,15 +838,14 @@ LL | where
LL | Dst: BikeshedIntrinsicFrom<Src, Context>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
-error[E0277]: `f64` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
- --> $DIR/numbers.rs:127:39
+error[E0277]: `f64` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:130:39
|
LL | assert::is_transmutable::< f64, i128>();
- | ^^^^ `f64` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`.
+ | ^^^^ The size of `f64` is smaller than the size of `i128`
|
- = help: the trait `BikeshedIntrinsicFrom<f64, assert::Context, Assume { alignment: false, lifetimes: false, safety: false, validity: false }>` is not implemented for `i128`
note: required by a bound in `is_transmutable`
- --> $DIR/numbers.rs:12:14
+ --> $DIR/numbers.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
diff --git a/tests/ui/transmutability/primitives/numbers.next.stderr b/tests/ui/transmutability/primitives/numbers.next.stderr
new file mode 100644
index 000000000..d12e17297
--- /dev/null
+++ b/tests/ui/transmutability/primitives/numbers.next.stderr
@@ -0,0 +1,858 @@
+error[E0277]: `i8` cannot be safely transmuted into `i16` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:65:40
+ |
+LL | assert::is_transmutable::< i8, i16>();
+ | ^^^ The size of `i8` is smaller than the size of `i16`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i8` cannot be safely transmuted into `u16` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:66:40
+ |
+LL | assert::is_transmutable::< i8, u16>();
+ | ^^^ The size of `i8` is smaller than the size of `u16`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i8` cannot be safely transmuted into `i32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:67:40
+ |
+LL | assert::is_transmutable::< i8, i32>();
+ | ^^^ The size of `i8` is smaller than the size of `i32`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i8` cannot be safely transmuted into `f32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:68:40
+ |
+LL | assert::is_transmutable::< i8, f32>();
+ | ^^^ The size of `i8` is smaller than the size of `f32`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i8` cannot be safely transmuted into `u32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:69:40
+ |
+LL | assert::is_transmutable::< i8, u32>();
+ | ^^^ The size of `i8` is smaller than the size of `u32`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i8` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:70:40
+ |
+LL | assert::is_transmutable::< i8, u64>();
+ | ^^^ The size of `i8` is smaller than the size of `u64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i8` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:71:40
+ |
+LL | assert::is_transmutable::< i8, i64>();
+ | ^^^ The size of `i8` is smaller than the size of `i64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i8` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:72:40
+ |
+LL | assert::is_transmutable::< i8, f64>();
+ | ^^^ The size of `i8` is smaller than the size of `f64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i8` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:73:39
+ |
+LL | assert::is_transmutable::< i8, u128>();
+ | ^^^^ The size of `i8` is smaller than the size of `u128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i8` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:74:39
+ |
+LL | assert::is_transmutable::< i8, i128>();
+ | ^^^^ The size of `i8` is smaller than the size of `i128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u8` cannot be safely transmuted into `i16` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:76:40
+ |
+LL | assert::is_transmutable::< u8, i16>();
+ | ^^^ The size of `u8` is smaller than the size of `i16`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u8` cannot be safely transmuted into `u16` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:77:40
+ |
+LL | assert::is_transmutable::< u8, u16>();
+ | ^^^ The size of `u8` is smaller than the size of `u16`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u8` cannot be safely transmuted into `i32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:78:40
+ |
+LL | assert::is_transmutable::< u8, i32>();
+ | ^^^ The size of `u8` is smaller than the size of `i32`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u8` cannot be safely transmuted into `f32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:79:40
+ |
+LL | assert::is_transmutable::< u8, f32>();
+ | ^^^ The size of `u8` is smaller than the size of `f32`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u8` cannot be safely transmuted into `u32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:80:40
+ |
+LL | assert::is_transmutable::< u8, u32>();
+ | ^^^ The size of `u8` is smaller than the size of `u32`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u8` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:81:40
+ |
+LL | assert::is_transmutable::< u8, u64>();
+ | ^^^ The size of `u8` is smaller than the size of `u64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u8` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:82:40
+ |
+LL | assert::is_transmutable::< u8, i64>();
+ | ^^^ The size of `u8` is smaller than the size of `i64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u8` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:83:40
+ |
+LL | assert::is_transmutable::< u8, f64>();
+ | ^^^ The size of `u8` is smaller than the size of `f64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u8` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:84:39
+ |
+LL | assert::is_transmutable::< u8, u128>();
+ | ^^^^ The size of `u8` is smaller than the size of `u128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u8` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:85:39
+ |
+LL | assert::is_transmutable::< u8, i128>();
+ | ^^^^ The size of `u8` is smaller than the size of `i128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i16` cannot be safely transmuted into `i32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:87:40
+ |
+LL | assert::is_transmutable::< i16, i32>();
+ | ^^^ The size of `i16` is smaller than the size of `i32`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i16` cannot be safely transmuted into `f32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:88:40
+ |
+LL | assert::is_transmutable::< i16, f32>();
+ | ^^^ The size of `i16` is smaller than the size of `f32`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i16` cannot be safely transmuted into `u32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:89:40
+ |
+LL | assert::is_transmutable::< i16, u32>();
+ | ^^^ The size of `i16` is smaller than the size of `u32`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i16` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:90:40
+ |
+LL | assert::is_transmutable::< i16, u64>();
+ | ^^^ The size of `i16` is smaller than the size of `u64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i16` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:91:40
+ |
+LL | assert::is_transmutable::< i16, i64>();
+ | ^^^ The size of `i16` is smaller than the size of `i64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i16` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:92:40
+ |
+LL | assert::is_transmutable::< i16, f64>();
+ | ^^^ The size of `i16` is smaller than the size of `f64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i16` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:93:39
+ |
+LL | assert::is_transmutable::< i16, u128>();
+ | ^^^^ The size of `i16` is smaller than the size of `u128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i16` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:94:39
+ |
+LL | assert::is_transmutable::< i16, i128>();
+ | ^^^^ The size of `i16` is smaller than the size of `i128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u16` cannot be safely transmuted into `i32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:96:40
+ |
+LL | assert::is_transmutable::< u16, i32>();
+ | ^^^ The size of `u16` is smaller than the size of `i32`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u16` cannot be safely transmuted into `f32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:97:40
+ |
+LL | assert::is_transmutable::< u16, f32>();
+ | ^^^ The size of `u16` is smaller than the size of `f32`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u16` cannot be safely transmuted into `u32` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:98:40
+ |
+LL | assert::is_transmutable::< u16, u32>();
+ | ^^^ The size of `u16` is smaller than the size of `u32`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u16` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:99:40
+ |
+LL | assert::is_transmutable::< u16, u64>();
+ | ^^^ The size of `u16` is smaller than the size of `u64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u16` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:100:40
+ |
+LL | assert::is_transmutable::< u16, i64>();
+ | ^^^ The size of `u16` is smaller than the size of `i64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u16` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:101:40
+ |
+LL | assert::is_transmutable::< u16, f64>();
+ | ^^^ The size of `u16` is smaller than the size of `f64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u16` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:102:39
+ |
+LL | assert::is_transmutable::< u16, u128>();
+ | ^^^^ The size of `u16` is smaller than the size of `u128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u16` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:103:39
+ |
+LL | assert::is_transmutable::< u16, i128>();
+ | ^^^^ The size of `u16` is smaller than the size of `i128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i32` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:105:40
+ |
+LL | assert::is_transmutable::< i32, u64>();
+ | ^^^ The size of `i32` is smaller than the size of `u64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i32` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:106:40
+ |
+LL | assert::is_transmutable::< i32, i64>();
+ | ^^^ The size of `i32` is smaller than the size of `i64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i32` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:107:40
+ |
+LL | assert::is_transmutable::< i32, f64>();
+ | ^^^ The size of `i32` is smaller than the size of `f64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i32` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:108:39
+ |
+LL | assert::is_transmutable::< i32, u128>();
+ | ^^^^ The size of `i32` is smaller than the size of `u128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i32` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:109:39
+ |
+LL | assert::is_transmutable::< i32, i128>();
+ | ^^^^ The size of `i32` is smaller than the size of `i128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `f32` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:111:40
+ |
+LL | assert::is_transmutable::< f32, u64>();
+ | ^^^ The size of `f32` is smaller than the size of `u64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `f32` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:112:40
+ |
+LL | assert::is_transmutable::< f32, i64>();
+ | ^^^ The size of `f32` is smaller than the size of `i64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `f32` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:113:40
+ |
+LL | assert::is_transmutable::< f32, f64>();
+ | ^^^ The size of `f32` is smaller than the size of `f64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `f32` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:114:39
+ |
+LL | assert::is_transmutable::< f32, u128>();
+ | ^^^^ The size of `f32` is smaller than the size of `u128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `f32` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:115:39
+ |
+LL | assert::is_transmutable::< f32, i128>();
+ | ^^^^ The size of `f32` is smaller than the size of `i128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u32` cannot be safely transmuted into `u64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:117:40
+ |
+LL | assert::is_transmutable::< u32, u64>();
+ | ^^^ The size of `u32` is smaller than the size of `u64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u32` cannot be safely transmuted into `i64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:118:40
+ |
+LL | assert::is_transmutable::< u32, i64>();
+ | ^^^ The size of `u32` is smaller than the size of `i64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u32` cannot be safely transmuted into `f64` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:119:40
+ |
+LL | assert::is_transmutable::< u32, f64>();
+ | ^^^ The size of `u32` is smaller than the size of `f64`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u32` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:120:39
+ |
+LL | assert::is_transmutable::< u32, u128>();
+ | ^^^^ The size of `u32` is smaller than the size of `u128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u32` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:121:39
+ |
+LL | assert::is_transmutable::< u32, i128>();
+ | ^^^^ The size of `u32` is smaller than the size of `i128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u64` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:123:39
+ |
+LL | assert::is_transmutable::< u64, u128>();
+ | ^^^^ The size of `u64` is smaller than the size of `u128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `u64` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:124:39
+ |
+LL | assert::is_transmutable::< u64, i128>();
+ | ^^^^ The size of `u64` is smaller than the size of `i128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i64` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:126:39
+ |
+LL | assert::is_transmutable::< i64, u128>();
+ | ^^^^ The size of `i64` is smaller than the size of `u128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `i64` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:127:39
+ |
+LL | assert::is_transmutable::< i64, i128>();
+ | ^^^^ The size of `i64` is smaller than the size of `i128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `f64` cannot be safely transmuted into `u128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:129:39
+ |
+LL | assert::is_transmutable::< f64, u128>();
+ | ^^^^ The size of `f64` is smaller than the size of `u128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error[E0277]: `f64` cannot be safely transmuted into `i128` in the defining scope of `assert::Context`
+ --> $DIR/numbers.rs:130:39
+ |
+LL | assert::is_transmutable::< f64, i128>();
+ | ^^^^ The size of `f64` is smaller than the size of `i128`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/numbers.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context>
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
+
+error: aborting due to 57 previous errors
+
+For more information about this error, try `rustc --explain E0277`.
diff --git a/tests/ui/transmutability/primitives/numbers.rs b/tests/ui/transmutability/primitives/numbers.rs
index 0df43d204..e980e91ed 100644
--- a/tests/ui/transmutability/primitives/numbers.rs
+++ b/tests/ui/transmutability/primitives/numbers.rs
@@ -1,3 +1,6 @@
+// revisions: current next
+//[next] compile-flags: -Ztrait-solver=next
+
#![crate_type = "lib"]
#![feature(transmutability)]
#![allow(dead_code)]
diff --git a/tests/ui/transmutability/primitives/unit.stderr b/tests/ui/transmutability/primitives/unit.current.stderr
index 988cd33b3..c49eb6097 100644
--- a/tests/ui/transmutability/primitives/unit.stderr
+++ b/tests/ui/transmutability/primitives/unit.current.stderr
@@ -1,12 +1,11 @@
-error[E0277]: `()` cannot be safely transmuted into `u8` in the defining scope of `should_have_correct_size::Context`.
- --> $DIR/unit.rs:28:35
+error[E0277]: `()` cannot be safely transmuted into `u8` in the defining scope of `should_have_correct_size::Context`
+ --> $DIR/unit.rs:31:35
|
LL | assert::is_transmutable::<(), u8, Context>();
- | ^^ `()` cannot be safely transmuted into `u8` in the defining scope of `should_have_correct_size::Context`.
+ | ^^ The size of `()` is smaller than the size of `u8`
|
- = help: the trait `BikeshedIntrinsicFrom<(), should_have_correct_size::Context, Assume { alignment: true, lifetimes: true, safety: true, validity: true }>` is not implemented for `u8`
note: required by a bound in `is_transmutable`
- --> $DIR/unit.rs:12:14
+ --> $DIR/unit.rs:15:14
|
LL | pub fn is_transmutable<Src, Dst, Context>()
| --------------- required by a bound in this function
diff --git a/tests/ui/transmutability/primitives/unit.next.stderr b/tests/ui/transmutability/primitives/unit.next.stderr
new file mode 100644
index 000000000..c49eb6097
--- /dev/null
+++ b/tests/ui/transmutability/primitives/unit.next.stderr
@@ -0,0 +1,24 @@
+error[E0277]: `()` cannot be safely transmuted into `u8` in the defining scope of `should_have_correct_size::Context`
+ --> $DIR/unit.rs:31:35
+ |
+LL | assert::is_transmutable::<(), u8, Context>();
+ | ^^ The size of `()` is smaller than the size of `u8`
+ |
+note: required by a bound in `is_transmutable`
+ --> $DIR/unit.rs:15:14
+ |
+LL | pub fn is_transmutable<Src, Dst, Context>()
+ | --------------- required by a bound in this function
+LL | where
+LL | Dst: BikeshedIntrinsicFrom<Src, Context, {
+ | ______________^
+LL | | Assume::ALIGNMENT
+LL | | .and(Assume::LIFETIMES)
+LL | | .and(Assume::SAFETY)
+LL | | .and(Assume::VALIDITY)
+LL | | }>
+ | |__________^ required by this bound in `is_transmutable`
+
+error: aborting due to previous error
+
+For more information about this error, try `rustc --explain E0277`.
diff --git a/tests/ui/transmutability/primitives/unit.rs b/tests/ui/transmutability/primitives/unit.rs
index 1975a61de..12eac1751 100644
--- a/tests/ui/transmutability/primitives/unit.rs
+++ b/tests/ui/transmutability/primitives/unit.rs
@@ -1,3 +1,6 @@
+// revisions: current next
+//[next] compile-flags: -Ztrait-solver=next
+
//! The unit type, `()`, should be one byte.
#![crate_type = "lib"]