Auto merge of #122365 - matthiaskrgr:rollup-4i350h6, r=matthiaskrgr

Rollup of 8 pull requests

Successful merges:

 - #115141 (Update Windows platform support)
 - #121865 (Add FileCheck annotations to MIR-opt unnamed-fields tests)
 - #122000 (Fix 32-bit overflows in LLVM composite constants)
 - #122194 (Enable creating backtraces via -Ztreat-err-as-bug when stashing errors)
 - #122319 (Don't ICE when non-self part of trait goal is constrained in new solver)
 - #122339 (Update books)
 - #122342 (Update /NODEFAUTLIB comment for msvc)
 - #122343 (Remove some unnecessary `allow(incomplete_features)` in the test suite)

r? `@ghost`
`@rustbot` modify labels: rollup
This commit is contained in:
bors 2024-03-12 06:29:06 +00:00
commit b0170b693e
94 changed files with 396 additions and 381 deletions

View file

@ -95,11 +95,13 @@ impl<'ll> BackendTypes for CodegenCx<'ll, '_> {
impl<'ll> CodegenCx<'ll, '_> {
pub fn const_array(&self, ty: &'ll Type, elts: &[&'ll Value]) -> &'ll Value {
unsafe { llvm::LLVMConstArray(ty, elts.as_ptr(), elts.len() as c_uint) }
let len = u64::try_from(elts.len()).expect("LLVMConstArray2 elements len overflow");
unsafe { llvm::LLVMConstArray2(ty, elts.as_ptr(), len) }
}
pub fn const_vector(&self, elts: &[&'ll Value]) -> &'ll Value {
unsafe { llvm::LLVMConstVector(elts.as_ptr(), elts.len() as c_uint) }
let len = c_uint::try_from(elts.len()).expect("LLVMConstVector elements len overflow");
unsafe { llvm::LLVMConstVector(elts.as_ptr(), len) }
}
pub fn const_bytes(&self, bytes: &[u8]) -> &'ll Value {
@ -108,8 +110,8 @@ pub fn const_bytes(&self, bytes: &[u8]) -> &'ll Value {
pub fn const_get_elt(&self, v: &'ll Value, idx: u64) -> &'ll Value {
unsafe {
assert_eq!(idx as c_uint as u64, idx);
let r = llvm::LLVMGetAggregateElement(v, idx as c_uint).unwrap();
let idx = c_uint::try_from(idx).expect("LLVMGetAggregateElement index overflow");
let r = llvm::LLVMGetAggregateElement(v, idx).unwrap();
debug!("const_get_elt(v={:?}, idx={}, r={:?})", v, idx, r);
@ -329,7 +331,7 @@ pub fn val_ty(v: &Value) -> &Type {
pub fn bytes_in_context<'ll>(llcx: &'ll llvm::Context, bytes: &[u8]) -> &'ll Value {
unsafe {
let ptr = bytes.as_ptr() as *const c_char;
llvm::LLVMConstStringInContext(llcx, ptr, bytes.len() as c_uint, True)
llvm::LLVMConstStringInContext2(llcx, ptr, bytes.len(), True)
}
}
@ -338,9 +340,8 @@ pub fn struct_in_context<'ll>(
elts: &[&'ll Value],
packed: bool,
) -> &'ll Value {
unsafe {
llvm::LLVMConstStructInContext(llcx, elts.as_ptr(), elts.len() as c_uint, packed as Bool)
}
let len = c_uint::try_from(elts.len()).expect("LLVMConstStructInContext elements len overflow");
unsafe { llvm::LLVMConstStructInContext(llcx, elts.as_ptr(), len, packed as Bool) }
}
#[inline]

View file

@ -936,10 +936,16 @@ pub fn LLVMMDNodeInContext2<'a>(
pub fn LLVMConstReal(RealTy: &Type, N: f64) -> &Value;
// Operations on composite constants
pub fn LLVMConstStringInContext(
pub fn LLVMConstArray2<'a>(
ElementTy: &'a Type,
ConstantVals: *const &'a Value,
Length: u64,
) -> &'a Value;
pub fn LLVMArrayType2(ElementType: &Type, ElementCount: u64) -> &Type;
pub fn LLVMConstStringInContext2(
C: &Context,
Str: *const c_char,
Length: c_uint,
Length: size_t,
DontNullTerminate: Bool,
) -> &Value;
pub fn LLVMConstStructInContext<'a>(
@ -948,14 +954,6 @@ pub fn LLVMConstStructInContext<'a>(
Count: c_uint,
Packed: Bool,
) -> &'a Value;
// FIXME: replace with LLVMConstArray2 when bumped minimal version to llvm-17
// https://github.com/llvm/llvm-project/commit/35276f16e5a2cae0dfb49c0fbf874d4d2f177acc
pub fn LLVMConstArray<'a>(
ElementTy: &'a Type,
ConstantVals: *const &'a Value,
Length: c_uint,
) -> &'a Value;
pub fn LLVMConstVector(ScalarConstantVals: *const &Value, Size: c_uint) -> &Value;
// Constant expressions
@ -1530,9 +1528,6 @@ pub fn LLVMStructSetBody<'a>(
/// See llvm::LLVMTypeKind::getTypeID.
pub fn LLVMRustGetTypeKind(Ty: &Type) -> TypeKind;
// Operations on array, pointer, and vector types (sequence types)
pub fn LLVMRustArrayType(ElementType: &Type, ElementCount: u64) -> &Type;
// Operations on all values
pub fn LLVMRustGlobalAddMetadata<'a>(Val: &'a Value, KindID: c_uint, Metadata: &'a Metadata);
pub fn LLVMRustIsNonGVFunctionPointerTy(Val: &Value) -> bool;

View file

@ -233,7 +233,7 @@ fn val_ty(&self, v: &'ll Value) -> &'ll Type {
}
fn type_array(&self, ty: &'ll Type, len: u64) -> &'ll Type {
unsafe { llvm::LLVMRustArrayType(ty, len) }
unsafe { llvm::LLVMArrayType2(ty, len) }
}
}

View file

@ -769,13 +769,10 @@ pub fn stash_diagnostic(
format!("invalid level in `stash_diagnostic`: {:?}", diag.level),
);
}
Error => {
// This `unchecked_error_guaranteed` is valid. It is where the
// `ErrorGuaranteed` for stashed errors originates. See
// `DiagCtxtInner::drop`.
#[allow(deprecated)]
Some(ErrorGuaranteed::unchecked_error_guaranteed())
}
// We delay a bug here so that `-Ztreat-err-as-bug -Zeagerly-emit-delayed-bugs`
// can be used to create a backtrace at the stashing site insted of whenever the
// diagnostic context is dropped and thus delayed bugs are emitted.
Error => Some(self.span_delayed_bug(span, "stashing {key:?}")),
DelayedBug => return self.inner.borrow_mut().emit_diagnostic(diag),
ForceWarning(_) | Warning | Note | OnceNote | Help | OnceHelp | FailureNote | Allow
| Expect(_) => None,

View file

@ -10,6 +10,7 @@
#include "llvm/IR/IntrinsicsARM.h"
#include "llvm/IR/LLVMRemarkStreamer.h"
#include "llvm/IR/Mangler.h"
#include "llvm/IR/Value.h"
#include "llvm/Remarks/RemarkStreamer.h"
#include "llvm/Remarks/RemarkSerializer.h"
#include "llvm/Remarks/RemarkFormat.h"
@ -1223,14 +1224,6 @@ extern "C" void LLVMRustWriteValueToString(LLVMValueRef V,
}
}
// LLVMArrayType function does not support 64-bit ElementCount
// FIXME: replace with LLVMArrayType2 when bumped minimal version to llvm-17
// https://github.com/llvm/llvm-project/commit/35276f16e5a2cae0dfb49c0fbf874d4d2f177acc
extern "C" LLVMTypeRef LLVMRustArrayType(LLVMTypeRef ElementTy,
uint64_t ElementCount) {
return wrap(ArrayType::get(unwrap(ElementTy), ElementCount));
}
DEFINE_SIMPLE_CONVERSION_FUNCTIONS(Twine, LLVMTwineRef)
extern "C" void LLVMRustWriteTwineToString(LLVMTwineRef T, RustStringRef Str) {
@ -2114,3 +2107,36 @@ extern "C" bool LLVMRustLLVMHasZlibCompressionForDebugSymbols() {
extern "C" bool LLVMRustLLVMHasZstdCompressionForDebugSymbols() {
return llvm::compression::zstd::isAvailable();
}
// Operations on composite constants.
// These are clones of LLVM api functions that will become available in future releases.
// They can be removed once Rust's minimum supported LLVM version supports them.
// See https://github.com/rust-lang/rust/issues/121868
// See https://llvm.org/doxygen/group__LLVMCCoreValueConstantComposite.html
// FIXME: Remove when Rust's minimum supported LLVM version reaches 19.
// https://github.com/llvm/llvm-project/commit/e1405e4f71c899420ebf8262d5e9745598419df8
#if LLVM_VERSION_LT(19, 0)
extern "C" LLVMValueRef LLVMConstStringInContext2(LLVMContextRef C,
const char *Str,
size_t Length,
bool DontNullTerminate) {
return wrap(ConstantDataArray::getString(*unwrap(C), StringRef(Str, Length), !DontNullTerminate));
}
#endif
// FIXME: Remove when Rust's minimum supported LLVM version reaches 17.
// https://github.com/llvm/llvm-project/commit/35276f16e5a2cae0dfb49c0fbf874d4d2f177acc
#if LLVM_VERSION_LT(17, 0)
extern "C" LLVMValueRef LLVMConstArray2(LLVMTypeRef ElementTy,
LLVMValueRef *ConstantVals,
uint64_t Length) {
ArrayRef<Constant *> V(unwrap<Constant>(ConstantVals, Length), Length);
return wrap(ConstantArray::get(ArrayType::get(unwrap(ElementTy), Length), V));
}
extern "C" LLVMTypeRef LLVMArrayType2(LLVMTypeRef ElementTy,
uint64_t ElementCount) {
return wrap(ArrayType::get(unwrap(ElementTy), ElementCount));
}
#endif

View file

@ -17,15 +17,19 @@ pub fn opts() -> TargetOptions {
crt_static_allows_dylibs: true,
crt_static_respected: true,
requires_uwtable: true,
// Currently we don't pass the /NODEFAULTLIB flag to the linker on MSVC
// as there's been trouble in the past of linking the C++ standard
// library required by LLVM. This likely needs to happen one day, but
// in general Windows is also a more controlled environment than
// Unix, so it's not necessarily as critical that this be implemented.
// We don't pass the /NODEFAULTLIB flag to the linker on MSVC
// as that prevents linker directives embedded in object files from
// including other necessary libraries.
//
// Note that there are also some licensing worries about statically
// linking some libraries which require a specific agreement, so it may
// not ever be possible for us to pass this flag.
// For example, msvcrt.lib embeds a linker directive like:
// /DEFAULTLIB:vcruntime.lib /DEFAULTLIB:ucrt.lib
// So that vcruntime.lib and ucrt.lib are included when the entry point
// in msvcrt.lib is used. Using /NODEFAULTLIB would mean having to
// manually add those two libraries and potentially further dependencies
// they bring in.
//
// See also https://learn.microsoft.com/en-us/cpp/preprocessor/comment-c-cpp?view=msvc-170#lib
// for documention on including library dependencies in C/C++ code.
no_default_libraries: false,
has_thread_local: true,

View file

@ -24,7 +24,7 @@ pub fn target() -> Target {
Target {
llvm_target: "i686-pc-windows-msvc".into(),
metadata: crate::spec::TargetMetadata {
description: Some("32-bit MSVC (Windows 7+)".into()),
description: Some("32-bit MSVC (Windows 10+)".into()),
tier: Some(1),
host_tools: Some(true),
std: Some(true),

View file

@ -11,7 +11,7 @@ pub fn target() -> Target {
Target {
llvm_target: "x86_64-pc-windows-msvc".into(),
metadata: crate::spec::TargetMetadata {
description: Some("64-bit MSVC (Windows 7+)".into()),
description: Some("64-bit MSVC (Windows 10+)".into()),
tier: Some(1),
host_tools: Some(true),
std: Some(true),

View file

@ -274,7 +274,9 @@ pub(super) fn assemble_and_evaluate_candidates<G: GoalKind<'tcx>>(
let goal =
goal.with(self.tcx(), goal.predicate.with_self_ty(self.tcx(), normalized_self_ty));
debug_assert_eq!(goal, self.resolve_vars_if_possible(goal));
// Vars that show up in the rest of the goal substs may have been constrained by
// normalizing the self type as well, since type variables are not uniquified.
let goal = self.resolve_vars_if_possible(goal);
let mut candidates = vec![];

@ -1 +1 @@
Subproject commit 3417f866932cb1c09c6be0f31d2a02ee01b4b95d
Subproject commit 5afb503a4c1ea3c84370f8f4c08a1cddd1cdf6ad

@ -1 +1 @@
Subproject commit 57f1e708f5d5850562bc385aaf610e6af14d6ec8
Subproject commit e093099709456e6fd74fecd2505fdf49a2471c10

@ -1 +1 @@
Subproject commit 7b0ef5b0bea5e3ce3b9764aa5754a60e2cc05c52
Subproject commit 8a5d647f19b08998612146b1cb2ca47083db63e0

View file

@ -33,12 +33,12 @@ All tier 1 targets with host tools support the full standard library.
target | notes
-------|-------
`aarch64-unknown-linux-gnu` | ARM64 Linux (kernel 4.1, glibc 2.17+)
`i686-pc-windows-gnu` | 32-bit MinGW (Windows 7+) [^windows-support] [^x86_32-floats-return-ABI]
`i686-pc-windows-msvc` | 32-bit MSVC (Windows 7+) [^windows-support] [^x86_32-floats-return-ABI]
`i686-pc-windows-gnu` | 32-bit MinGW (Windows 10+) [^windows-support] [^x86_32-floats-return-ABI]
`i686-pc-windows-msvc` | 32-bit MSVC (Windows 10+) [^windows-support] [^x86_32-floats-return-ABI]
`i686-unknown-linux-gnu` | 32-bit Linux (kernel 3.2+, glibc 2.17+) [^x86_32-floats-return-ABI]
`x86_64-apple-darwin` | 64-bit macOS (10.12+, Sierra+)
`x86_64-pc-windows-gnu` | 64-bit MinGW (Windows 7+) [^windows-support]
`x86_64-pc-windows-msvc` | 64-bit MSVC (Windows 7+) [^windows-support]
`x86_64-pc-windows-gnu` | 64-bit MinGW (Windows 10+) [^windows-support]
`x86_64-pc-windows-msvc` | 64-bit MSVC (Windows 10+) [^windows-support]
`x86_64-unknown-linux-gnu` | 64-bit Linux (kernel 3.2+, glibc 2.17+)
[^windows-support]: Only Windows 10 currently undergoes automated testing. Earlier versions of Windows rely on testing and support from the community.
@ -292,7 +292,6 @@ target | std | host | notes
[`i586-pc-nto-qnx700`](platform-support/nto-qnx.md) | * | | 32-bit x86 QNX Neutrino 7.0 RTOS [^x86_32-floats-return-ABI]
[`i586-unknown-netbsd`](platform-support/netbsd.md) | ✓ | | 32-bit x86, restricted to Pentium
`i686-apple-darwin` | ✓ | ✓ | 32-bit macOS (10.12+, Sierra+) [^x86_32-floats-return-ABI]
`i686-pc-windows-msvc` | * | | 32-bit Windows XP support [^x86_32-floats-return-ABI]
[`i686-pc-windows-gnullvm`](platform-support/pc-windows-gnullvm.md) | ✓ | ✓ | [^x86_32-floats-return-ABI]
`i686-unknown-haiku` | ✓ | ✓ | 32-bit Haiku [^x86_32-floats-return-ABI]
[`i686-unknown-hurd-gnu`](platform-support/hurd.md) | ✓ | ✓ | 32-bit GNU/Hurd [^x86_32-floats-return-ABI]
@ -369,7 +368,6 @@ target | std | host | notes
[`x86_64-apple-watchos-sim`](platform-support/apple-watchos.md) | ✓ | | x86 64-bit Apple WatchOS simulator
[`x86_64-pc-nto-qnx710`](platform-support/nto-qnx.md) | ✓ | | x86 64-bit QNX Neutrino 7.1 RTOS |
[`x86_64-pc-windows-gnullvm`](platform-support/pc-windows-gnullvm.md) | ✓ | ✓ |
`x86_64-pc-windows-msvc` | * | | 64-bit Windows XP support
[`x86_64-unikraft-linux-musl`](platform-support/unikraft-linux-musl.md) | ✓ | | 64-bit Unikraft with musl 1.2.3
`x86_64-unknown-dragonfly` | ✓ | ✓ | 64-bit DragonFlyBSD
`x86_64-unknown-haiku` | ✓ | ✓ | 64-bit Haiku

View file

@ -1,4 +1,5 @@
// skip-filecheck
// Tests the correct handling of unnamed fields within structs and unions marked with #[repr(C)].
// EMIT_MIR field_access.foo.SimplifyCfg-initial.after.mir
// EMIT_MIR field_access.bar.SimplifyCfg-initial.after.mir
@ -36,18 +37,36 @@ union Bar {
fn access<T>(_: T) {}
// CHECK-LABEL: fn foo(
fn foo(foo: Foo) {
// CHECK [[a:_.*]] = (_1.0: u8);
// CHECK _.* = access::<u8>(move [[a]]) -> [return: bb1, unwind: bb5];
access(foo.a);
// CHECK [[b:_.*]] = ((_1.1: Foo::{anon_adt#0}).0: i8);
// CHECK _.* = access::<i8>(move [[b]]) -> [return: bb2, unwind: bb5];
access(foo.b);
// CHECK [[c:_.*]] = ((_1.1: Foo::{anon_adt#0}).1: bool);
// CHECK _.* = access::<bool>(move [[c]]) -> [return: bb3, unwind: bb5];
access(foo.c);
// CHECK [[d:_.*]] = (((_1.2: Foo::{anon_adt#1}).0: Foo::{anon_adt#1}::{anon_adt#0}).0: [u8; 1]);
// CHECK _.* = access::<[u8; 1]>(move [[d]]) -> [return: bb4, unwind: bb5];
access(foo.d);
}
// CHECK-LABEL: fn bar(
fn bar(bar: Bar) {
unsafe {
// CHECK [[a:_.*]] = (_1.0: u8);
// CHECK _.* = access::<u8>(move [[a]]) -> [return: bb1, unwind: bb5];
access(bar.a);
// CHECK [[b:_.*]] = ((_1.1: Bar::{anon_adt#0}).0: i8);
// CHECK _.* = access::<i8>(move [[b]]) -> [return: bb2, unwind: bb5];
access(bar.b);
// CHECK [[c:_.*]] = ((_1.1: Bar::{anon_adt#0}).1: bool);
// CHECK _.* = access::<bool>(move [[c]]) -> [return: bb3, unwind: bb5];
access(bar.c);
// CHECK [[d:_.*]] = (((_1.2: Bar::{anon_adt#1}).0: Bar::{anon_adt#1}::{anon_adt#0}).0: [u8; 1]);
// CHECK _.* = access::<[u8; 1]>(move [[d]]) -> [return: bb4, unwind: bb5];
access(bar.d);
}
}

View file

@ -1,8 +1,6 @@
//@ check-pass
//@ edition:2021
#![allow(incomplete_features)]
pub trait Foo {
#[allow(async_fn_in_trait)]
async fn foo(&mut self);

View file

@ -1,7 +1,5 @@
//@ edition: 2021
#![allow(incomplete_features)]
trait MyTrait {
async fn foo(&self) -> i32;
}

View file

@ -1,11 +1,11 @@
error: method should be `async` or return a future, but it is synchronous
--> $DIR/fn-not-async-err.rs:10:5
--> $DIR/fn-not-async-err.rs:8:5
|
LL | fn foo(&self) -> i32 {
| ^^^^^^^^^^^^^^^^^^^^
|
note: this method is `async` so it expects a future to be returned
--> $DIR/fn-not-async-err.rs:6:5
--> $DIR/fn-not-async-err.rs:4:5
|
LL | async fn foo(&self) -> i32;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^

View file

@ -1,8 +1,6 @@
//@ edition: 2021
//@ check-pass
#![allow(incomplete_features)]
use std::future::Future;
trait MyTrait {

View file

@ -1,7 +1,5 @@
//@ edition: 2021
#![allow(incomplete_features)]
trait Foo {
async fn foo<T>();
}

View file

@ -1,5 +1,5 @@
error[E0053]: method `foo` has an incompatible generic parameter for trait `Foo`
--> $DIR/generics-mismatch.rs:10:18
--> $DIR/generics-mismatch.rs:8:18
|
LL | trait Foo {
| ---

View file

@ -1,8 +1,6 @@
//@ check-pass
//@ edition: 2021
#![allow(incomplete_features)]
trait TcpStack {
type Connection<'a>: Sized where Self: 'a;
fn connect<'a>(&'a self) -> Self::Connection<'a>;

View file

@ -1,8 +1,6 @@
//@ check-pass
//@ edition:2021
#![allow(incomplete_features)]
use std::future::Future;
async fn yield_now() {}

View file

@ -2,8 +2,6 @@
//@ edition:2021
//@ check-pass
#![allow(incomplete_features)]
trait T {
#[allow(async_fn_in_trait)]
async fn foo();

View file

@ -1,8 +1,6 @@
//@ check-pass
//@ edition:2021
#![allow(incomplete_features)]
pub trait SpiDevice {
#[allow(async_fn_in_trait)]
async fn transaction<F, R>(&mut self);

View file

@ -1,8 +1,6 @@
//@ edition:2021
//@ check-pass
#![allow(incomplete_features)]
use std::future::Future;
pub trait Pool {
type Conn;

View file

@ -1,8 +1,6 @@
//@ edition: 2021
//@ check-pass
#![allow(incomplete_features)]
use std::future::Future;
use std::marker::PhantomData;

View file

@ -1,5 +1,4 @@
#![feature(generic_const_exprs)]
#![allow(incomplete_features)]
// library portion of regression test for #87674
pub struct Foo<const N: usize>([(); N + 1])

View file

@ -1,5 +1,4 @@
#![feature(generic_const_exprs)]
#![allow(incomplete_features)]
// library portion of testing that `impl Trait<{ expr }>` doesnt
// ice because of a `DefKind::TyParam` parent

View file

@ -1,5 +1,4 @@
#![feature(generic_const_exprs)]
#![allow(incomplete_features)]
pub struct Foo<const N: usize>;

View file

@ -1,5 +1,4 @@
#![feature(generic_const_exprs)]
#![allow(incomplete_features)]
pub fn test1<T>() -> [u8; std::mem::size_of::<T>() - 1]
where

View file

@ -6,7 +6,7 @@ LL | let _ = const_evaluatable_lib::test1::<T>();
|
= help: try adding a `where` bound using this expression: `where [(); std::mem::size_of::<T>() - 1]:`
note: required by a bound in `test1`
--> $DIR/auxiliary/const_evaluatable_lib.rs:6:10
--> $DIR/auxiliary/const_evaluatable_lib.rs:5:10
|
LL | pub fn test1<T>() -> [u8; std::mem::size_of::<T>() - 1]
| ----- required by a bound in this function
@ -22,7 +22,7 @@ LL | let _ = const_evaluatable_lib::test1::<T>();
|
= help: try adding a `where` bound using this expression: `where [(); std::mem::size_of::<T>() - 1]:`
note: required by a bound in `test1`
--> $DIR/auxiliary/const_evaluatable_lib.rs:4:27
--> $DIR/auxiliary/const_evaluatable_lib.rs:3:27
|
LL | pub fn test1<T>() -> [u8; std::mem::size_of::<T>() - 1]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `test1`
@ -35,7 +35,7 @@ LL | let _ = const_evaluatable_lib::test1::<T>();
|
= help: try adding a `where` bound using this expression: `where [(); std::mem::size_of::<T>() - 1]:`
note: required by a bound in `test1`
--> $DIR/auxiliary/const_evaluatable_lib.rs:6:10
--> $DIR/auxiliary/const_evaluatable_lib.rs:5:10
|
LL | pub fn test1<T>() -> [u8; std::mem::size_of::<T>() - 1]
| ----- required by a bound in this function
@ -51,7 +51,7 @@ LL | let _ = const_evaluatable_lib::test1::<T>();
|
= help: try adding a `where` bound using this expression: `where [(); std::mem::size_of::<T>() - 1]:`
note: required by a bound in `test1`
--> $DIR/auxiliary/const_evaluatable_lib.rs:4:27
--> $DIR/auxiliary/const_evaluatable_lib.rs:3:27
|
LL | pub fn test1<T>() -> [u8; std::mem::size_of::<T>() - 1]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `test1`

View file

@ -1,5 +1,4 @@
#![feature(generic_const_exprs)]
#![allow(incomplete_features)]
// All of these three items must be in `lib2` to reproduce the error

View file

@ -5,7 +5,7 @@ LL | generics_of_parent_impl_trait::foo([()]);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer the value of const parameter `N` declared on the function `foo`
|
note: required by a bound in `foo`
--> $DIR/auxiliary/generics_of_parent_impl_trait.rs:6:48
--> $DIR/auxiliary/generics_of_parent_impl_trait.rs:5:48
|
LL | pub fn foo<const N: usize>(foo: impl Into<[(); N + 1]>) {
| ^^^^^ required by this bound in `foo`

View file

@ -1,6 +1,5 @@
#![crate_type = "lib"]
#![feature(const_closures, const_trait_impl, effects)]
#![allow(incomplete_features)]
pub const fn test() {
let cl = const || {};

View file

@ -1,5 +1,4 @@
#![feature(dyn_star)]
#![allow(incomplete_features)]
use std::fmt::Display;

View file

@ -10,7 +10,7 @@ LL | dyn_star_foreign::require_dyn_star_display(1usize);
found type `usize`
= help: `usize` implements `Display`, `#[feature(dyn_star)]` is likely not enabled; that feature it is currently incomplete
note: function defined here
--> $DIR/auxiliary/dyn-star-foreign.rs:6:8
--> $DIR/auxiliary/dyn-star-foreign.rs:5:8
|
LL | pub fn require_dyn_star_display(_: dyn* Display) {}
| ^^^^^^^^^^^^^^^^^^^^^^^^

View file

@ -6,7 +6,6 @@
//@ error-pattern: expected generic lifetime parameter, found `'a`
#![feature(type_alias_impl_trait)]
#![allow(incomplete_features)]
use std::future::Future;

View file

@ -1,5 +1,5 @@
error[E0792]: expected generic lifetime parameter, found `'a`
--> $DIR/issue-90014-tait2.rs:27:9
--> $DIR/issue-90014-tait2.rs:26:9
|
LL | type Fut<'a> = impl Future<Output = ()>;
| -- this generic parameter must be used with a generic lifetime parameter

View file

@ -1,7 +1,6 @@
//@ check-pass
#![feature(lint_reasons)]
#![allow(incomplete_features)]
pub struct Wrapper<T>(T);

View file

@ -1,7 +1,5 @@
//@ edition:2021
#![allow(incomplete_features)]
pub trait Foo {
async fn woopsie_async(&self) -> String {
42

View file

@ -1,5 +1,5 @@
error[E0308]: mismatched types
--> $DIR/default-body-type-err-2.rs:7:9
--> $DIR/default-body-type-err-2.rs:5:9
|
LL | async fn woopsie_async(&self) -> String {
| ------ expected `String` because of return type

View file

@ -1,8 +1,6 @@
//@ edition:2021
//@ check-pass
#![allow(incomplete_features)]
use std::fmt::Debug;
trait Foo {

View file

@ -1,8 +1,6 @@
//@ check-pass
//@ edition:2021
#![allow(incomplete_features)]
use std::fmt::Debug;
trait Foo {

View file

@ -1,8 +1,6 @@
//@ check-pass
//@ edition:2021
#![allow(incomplete_features)]
pub trait Foo {
#[allow(async_fn_in_trait)]
async fn bar<'a: 'a>(&'a mut self);

View file

@ -1,8 +1,6 @@
//@ build-pass
//@ compile-flags: --crate-type=lib
#![allow(incomplete_features)]
trait Foo {
fn bar() -> impl Sized;
}

View file

@ -1,7 +1,5 @@
//@ check-pass
#![allow(incomplete_features)]
trait Foo<T> {
fn foo<F2: Foo<T>>(self) -> impl Foo<T>;
}

View file

@ -1,5 +1,5 @@
error[E0053]: method `early` has an incompatible type for trait
--> $DIR/method-signature-matches.rs:57:27
--> $DIR/method-signature-matches.rs:55:27
|
LL | fn early<'late, T>(_: &'late ()) {}
| - ^^^^^^^^^
@ -9,7 +9,7 @@ LL | fn early<'late, T>(_: &'late ()) {}
| expected this type parameter
|
note: type in trait
--> $DIR/method-signature-matches.rs:52:28
--> $DIR/method-signature-matches.rs:50:28
|
LL | fn early<'early, T>(x: &'early T) -> impl Sized;
| ^^^^^^^^^

View file

@ -1,5 +1,5 @@
error[E0053]: method `owo` has an incompatible type for trait
--> $DIR/method-signature-matches.rs:13:15
--> $DIR/method-signature-matches.rs:11:15
|
LL | fn owo(_: u8) {}
| ^^
@ -8,7 +8,7 @@ LL | fn owo(_: u8) {}
| help: change the parameter type to match the trait: `()`
|
note: type in trait
--> $DIR/method-signature-matches.rs:8:15
--> $DIR/method-signature-matches.rs:6:15
|
LL | fn owo(x: ()) -> impl Sized;
| ^^

View file

@ -1,5 +1,5 @@
error[E0053]: method `owo` has an incompatible type for trait
--> $DIR/method-signature-matches.rs:24:21
--> $DIR/method-signature-matches.rs:22:21
|
LL | async fn owo(_: u8) {}
| ^^
@ -8,7 +8,7 @@ LL | async fn owo(_: u8) {}
| help: change the parameter type to match the trait: `()`
|
note: type in trait
--> $DIR/method-signature-matches.rs:19:21
--> $DIR/method-signature-matches.rs:17:21
|
LL | async fn owo(x: ()) {}
| ^^

View file

@ -1,8 +1,6 @@
//@ edition: 2021
//@ revisions: mismatch mismatch_async too_many too_few lt
#![allow(incomplete_features)]
#[cfg(mismatch)]
trait Uwu {
fn owo(x: ()) -> impl Sized;

View file

@ -1,5 +1,5 @@
error[E0050]: method `come_on_a_little_more_effort` has 0 parameters but the declaration in trait `TooLittle::come_on_a_little_more_effort` has 3
--> $DIR/method-signature-matches.rs:46:5
--> $DIR/method-signature-matches.rs:44:5
|
LL | fn come_on_a_little_more_effort(_: (), _: (), _: ()) -> impl Sized;
| ---------------- trait requires 3 parameters

View file

@ -1,5 +1,5 @@
error[E0050]: method `calm_down_please` has 3 parameters but the declaration in trait `TooMuch::calm_down_please` has 0
--> $DIR/method-signature-matches.rs:35:28
--> $DIR/method-signature-matches.rs:33:28
|
LL | fn calm_down_please() -> impl Sized;
| ------------------------------------ trait requires 0 parameters

View file

@ -1,7 +1,6 @@
//@ check-pass
#![feature(lint_reasons)]
#![allow(incomplete_features)]
use std::fmt::Display;
use std::ops::Deref;

View file

@ -1,7 +1,5 @@
//@ check-pass
#![allow(incomplete_features)]
use std::fmt::Debug;
trait Foo {

View file

@ -1,7 +1,6 @@
//@ check-pass
#![feature(lint_reasons)]
#![allow(incomplete_features)]
pub trait Foo {
fn f() -> Box<impl Sized>;

View file

@ -1,7 +1,6 @@
//@ check-pass
#![feature(lint_reasons)]
#![allow(incomplete_features)]
use std::fmt::Display;

View file

@ -1,7 +1,5 @@
// issue #101663
#![allow(incomplete_features)]
use std::fmt::Display;
trait Wf<T> {

View file

@ -1,5 +1,5 @@
error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
--> $DIR/wf-bounds.rs:14:22
--> $DIR/wf-bounds.rs:12:22
|
LL | fn nya() -> impl Wf<Vec<[u8]>>;
| ^^^^^^^^^^^^^ doesn't have a size known at compile-time
@ -9,14 +9,14 @@ note: required by an implicit `Sized` bound in `Vec`
--> $SRC_DIR/alloc/src/vec/mod.rs:LL:COL
error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
--> $DIR/wf-bounds.rs:17:23
--> $DIR/wf-bounds.rs:15:23
|
LL | fn nya2() -> impl Wf<[u8]>;
| ^^^^^^^^ doesn't have a size known at compile-time
|
= help: the trait `Sized` is not implemented for `[u8]`
note: required by an implicit `Sized` bound in `Wf`
--> $DIR/wf-bounds.rs:7:10
--> $DIR/wf-bounds.rs:5:10
|
LL | trait Wf<T> {
| ^ required by the implicit `Sized` requirement on this type parameter in `Wf`
@ -26,7 +26,7 @@ LL | trait Wf<T: ?Sized> {
| ++++++++
error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
--> $DIR/wf-bounds.rs:20:44
--> $DIR/wf-bounds.rs:18:44
|
LL | fn nya3() -> impl Wf<(), Output = impl Wf<Vec<[u8]>>>;
| ^^^^^^^^^^^^^ doesn't have a size known at compile-time
@ -36,14 +36,14 @@ note: required by an implicit `Sized` bound in `Vec`
--> $SRC_DIR/alloc/src/vec/mod.rs:LL:COL
error[E0277]: `T` doesn't implement `std::fmt::Display`
--> $DIR/wf-bounds.rs:23:26
--> $DIR/wf-bounds.rs:21:26
|
LL | fn nya4<T>() -> impl Wf<NeedsDisplay<T>>;
| ^^^^^^^^^^^^^^^^^^^ `T` cannot be formatted with the default formatter
|
= note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead
note: required by a bound in `NeedsDisplay`
--> $DIR/wf-bounds.rs:11:24
--> $DIR/wf-bounds.rs:9:24
|
LL | struct NeedsDisplay<T: Display>(T);
| ^^^^^^^ required by this bound in `NeedsDisplay`

View file

@ -1,8 +1,6 @@
//@ check-pass
//@ edition: 2021
#![allow(incomplete_features)]
use std::fmt::Debug;
trait Foo<Item> {

View file

@ -1,4 +1,3 @@
#![feature(lazy_type_alias)]
#![allow(incomplete_features)]
pub type Alias<T: Copy> = Option<T>;

View file

@ -5,7 +5,7 @@ LL | let _: lazy::Alias<String>;
| ^^^^^^ the trait `Copy` is not implemented for `String`
|
note: required by a bound in `lazy::Alias`
--> $DIR/auxiliary/lazy.rs:4:19
--> $DIR/auxiliary/lazy.rs:3:19
|
LL | pub type Alias<T: Copy> = Option<T>;
| ^^^^ required by this bound in `Alias`

View file

@ -5,7 +5,7 @@ LL | let _: lazy::Alias<String>;
| ^^^^^^ the trait `Copy` is not implemented for `String`
|
note: required by a bound in `lazy::Alias`
--> $DIR/auxiliary/lazy.rs:4:19
--> $DIR/auxiliary/lazy.rs:3:19
|
LL | pub type Alias<T: Copy> = Option<T>;
| ^^^^ required by this bound in `Alias`

View file

@ -1,5 +1,3 @@
#![allow(incomplete_features)]
mod child {
trait Main {
fn main() -> impl std::process::Termination;

View file

@ -1,11 +1,11 @@
error[E0277]: the trait bound `Something: Termination` is not satisfied
--> $DIR/issue-103052-2.rs:11:22
--> $DIR/issue-103052-2.rs:9:22
|
LL | fn main() -> Something {
| ^^^^^^^^^ the trait `Termination` is not implemented for `Something`
|
note: required by a bound in `Main::{synthetic#0}`
--> $DIR/issue-103052-2.rs:5:27
--> $DIR/issue-103052-2.rs:3:27
|
LL | fn main() -> impl std::process::Termination;
| ^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Main::{synthetic#0}`

View file

@ -1,7 +1,6 @@
//@ check-pass
#![feature(type_changing_struct_update)]
#![allow(incomplete_features)]
use std::any::Any;

View file

@ -1,7 +1,6 @@
//@ check-pass
#![feature(type_changing_struct_update)]
#![allow(incomplete_features)]
use std::borrow::Cow;
use std::marker::PhantomData;

View file

@ -1,5 +1,4 @@
#![feature(type_changing_struct_update)]
#![allow(incomplete_features)]
#[derive(Clone)]
struct Machine<'a, S> {

View file

@ -1,5 +1,5 @@
error[E0597]: `s` does not live long enough
--> $DIR/lifetime-update.rs:20:17
--> $DIR/lifetime-update.rs:19:17
|
LL | let s = String::from("hello");
| - binding `s` declared here

View file

@ -1,5 +1,4 @@
#![feature(type_changing_struct_update)]
#![allow(incomplete_features)]
struct Machine<'a, S, M> {
state: S,

View file

@ -1,5 +1,5 @@
error[E0308]: mismatched types
--> $DIR/type-generic-update.rs:46:11
--> $DIR/type-generic-update.rs:45:11
|
LL | ..m1
| ^^ expected `Machine<'_, i32, f64>`, found `Machine<'_, f64, f64>`
@ -8,7 +8,7 @@ LL | ..m1
found struct `Machine<'_, f64, _>`
error[E0308]: mismatched types
--> $DIR/type-generic-update.rs:51:11
--> $DIR/type-generic-update.rs:50:11
|
LL | ..m1
| ^^ expected `Machine<'_, i32, i32>`, found `Machine<'_, f64, f64>`

View file

@ -0,0 +1,24 @@
//@ check-pass
// This goal is also possible w/ a GAT, but lazy_type_alias
// makes the behavior a bit more readable.
#![feature(lazy_type_alias)]
//~^ WARN the feature `lazy_type_alias` is incomplete
struct Wr<T>(T);
trait Foo {}
impl Foo for Wr<i32> {}
type Alias<T> = (T,)
where Wr<T>: Foo;
fn hello<T>() where Alias<T>: Into<(T,)>, Wr<T>: Foo {}
fn main() {
// When calling `hello`, proving `Alias<?0>: Into<(?0,)>` will require
// normalizing the self type of the goal. This will emit the where
// clause `Wr<?0>: Foo`, which constrains `?0` in both the self type
// *and* the non-self part of the goal. That used to trigger a debug
// assertion.
hello::<_>();
}

View file

@ -0,0 +1,11 @@
warning: the feature `lazy_type_alias` is incomplete and may not be safe to use and/or cause compiler crashes
--> $DIR/normalize-self-type-constrains-trait-args.rs:5:12
|
LL | #![feature(lazy_type_alias)]
| ^^^^^^^^^^^^^^^
|
= note: see issue #112792 <https://github.com/rust-lang/rust/issues/112792> for more information
= note: `#[warn(incomplete_features)]` on by default
warning: 1 warning emitted

View file

@ -1,11 +1,11 @@
error[E0277]: `i8` cannot be safely transmuted into `i16`
--> $DIR/numbers.rs:65:40
--> $DIR/numbers.rs:64: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -14,13 +14,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `u16`
--> $DIR/numbers.rs:66:40
--> $DIR/numbers.rs:65: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -29,13 +29,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `i32`
--> $DIR/numbers.rs:67:40
--> $DIR/numbers.rs:66: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -44,13 +44,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `f32`
--> $DIR/numbers.rs:68:40
--> $DIR/numbers.rs:67: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -59,13 +59,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `u32`
--> $DIR/numbers.rs:69:40
--> $DIR/numbers.rs:68: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -74,13 +74,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `u64`
--> $DIR/numbers.rs:70:40
--> $DIR/numbers.rs:69: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -89,13 +89,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `i64`
--> $DIR/numbers.rs:71:40
--> $DIR/numbers.rs:70: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -104,13 +104,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `f64`
--> $DIR/numbers.rs:72:40
--> $DIR/numbers.rs:71: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -119,13 +119,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:73:39
--> $DIR/numbers.rs:72: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -134,13 +134,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:74:39
--> $DIR/numbers.rs:73: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -149,13 +149,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `i16`
--> $DIR/numbers.rs:76:40
--> $DIR/numbers.rs:75: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -164,13 +164,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `u16`
--> $DIR/numbers.rs:77:40
--> $DIR/numbers.rs:76: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -179,13 +179,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `i32`
--> $DIR/numbers.rs:78:40
--> $DIR/numbers.rs:77: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -194,13 +194,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `f32`
--> $DIR/numbers.rs:79:40
--> $DIR/numbers.rs:78: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -209,13 +209,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `u32`
--> $DIR/numbers.rs:80:40
--> $DIR/numbers.rs:79: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -224,13 +224,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `u64`
--> $DIR/numbers.rs:81:40
--> $DIR/numbers.rs:80: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -239,13 +239,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `i64`
--> $DIR/numbers.rs:82:40
--> $DIR/numbers.rs:81: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -254,13 +254,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `f64`
--> $DIR/numbers.rs:83:40
--> $DIR/numbers.rs:82: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -269,13 +269,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:84:39
--> $DIR/numbers.rs:83: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -284,13 +284,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:85:39
--> $DIR/numbers.rs:84: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -299,13 +299,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i16` cannot be safely transmuted into `i32`
--> $DIR/numbers.rs:87:40
--> $DIR/numbers.rs:86: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -314,13 +314,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i16` cannot be safely transmuted into `f32`
--> $DIR/numbers.rs:88:40
--> $DIR/numbers.rs:87: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -329,13 +329,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i16` cannot be safely transmuted into `u32`
--> $DIR/numbers.rs:89:40
--> $DIR/numbers.rs:88: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -344,13 +344,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i16` cannot be safely transmuted into `u64`
--> $DIR/numbers.rs:90:40
--> $DIR/numbers.rs:89: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -359,13 +359,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i16` cannot be safely transmuted into `i64`
--> $DIR/numbers.rs:91:40
--> $DIR/numbers.rs:90: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -374,13 +374,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i16` cannot be safely transmuted into `f64`
--> $DIR/numbers.rs:92:40
--> $DIR/numbers.rs:91: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -389,13 +389,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i16` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:93:39
--> $DIR/numbers.rs:92: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -404,13 +404,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i16` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:94:39
--> $DIR/numbers.rs:93: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -419,13 +419,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u16` cannot be safely transmuted into `i32`
--> $DIR/numbers.rs:96:40
--> $DIR/numbers.rs:95: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -434,13 +434,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u16` cannot be safely transmuted into `f32`
--> $DIR/numbers.rs:97:40
--> $DIR/numbers.rs:96: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -449,13 +449,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u16` cannot be safely transmuted into `u32`
--> $DIR/numbers.rs:98:40
--> $DIR/numbers.rs:97: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -464,13 +464,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u16` cannot be safely transmuted into `u64`
--> $DIR/numbers.rs:99:40
--> $DIR/numbers.rs:98: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -479,13 +479,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u16` cannot be safely transmuted into `i64`
--> $DIR/numbers.rs:100:40
--> $DIR/numbers.rs:99: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -494,13 +494,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u16` cannot be safely transmuted into `f64`
--> $DIR/numbers.rs:101:40
--> $DIR/numbers.rs:100: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -509,13 +509,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u16` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:102:39
--> $DIR/numbers.rs:101: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -524,13 +524,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u16` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:103:39
--> $DIR/numbers.rs:102: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -539,13 +539,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i32` cannot be safely transmuted into `u64`
--> $DIR/numbers.rs:105:40
--> $DIR/numbers.rs:104: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -554,13 +554,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i32` cannot be safely transmuted into `i64`
--> $DIR/numbers.rs:106:40
--> $DIR/numbers.rs:105: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -569,13 +569,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i32` cannot be safely transmuted into `f64`
--> $DIR/numbers.rs:107:40
--> $DIR/numbers.rs:106: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -584,13 +584,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i32` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:108:39
--> $DIR/numbers.rs:107: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -599,13 +599,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i32` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:109:39
--> $DIR/numbers.rs:108: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -614,13 +614,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `f32` cannot be safely transmuted into `u64`
--> $DIR/numbers.rs:111:40
--> $DIR/numbers.rs:110: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -629,13 +629,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `f32` cannot be safely transmuted into `i64`
--> $DIR/numbers.rs:112:40
--> $DIR/numbers.rs:111: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -644,13 +644,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `f32` cannot be safely transmuted into `f64`
--> $DIR/numbers.rs:113:40
--> $DIR/numbers.rs:112: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -659,13 +659,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `f32` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:114:39
--> $DIR/numbers.rs:113: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -674,13 +674,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `f32` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:115:39
--> $DIR/numbers.rs:114: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -689,13 +689,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u32` cannot be safely transmuted into `u64`
--> $DIR/numbers.rs:117:40
--> $DIR/numbers.rs:116: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -704,13 +704,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u32` cannot be safely transmuted into `i64`
--> $DIR/numbers.rs:118:40
--> $DIR/numbers.rs:117: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -719,13 +719,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u32` cannot be safely transmuted into `f64`
--> $DIR/numbers.rs:119:40
--> $DIR/numbers.rs:118: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -734,13 +734,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u32` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:120:39
--> $DIR/numbers.rs:119: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -749,13 +749,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u32` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:121:39
--> $DIR/numbers.rs:120: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -764,13 +764,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u64` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:123:39
--> $DIR/numbers.rs:122: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -779,13 +779,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u64` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:124:39
--> $DIR/numbers.rs:123: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -794,13 +794,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i64` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:126:39
--> $DIR/numbers.rs:125: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -809,13 +809,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i64` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:127:39
--> $DIR/numbers.rs:126: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -824,13 +824,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `f64` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:129:39
--> $DIR/numbers.rs:128: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -839,13 +839,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `f64` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:130:39
--> $DIR/numbers.rs:129: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function

View file

@ -1,11 +1,11 @@
error[E0277]: `i8` cannot be safely transmuted into `i16`
--> $DIR/numbers.rs:65:40
--> $DIR/numbers.rs:64: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -14,13 +14,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `u16`
--> $DIR/numbers.rs:66:40
--> $DIR/numbers.rs:65: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -29,13 +29,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `i32`
--> $DIR/numbers.rs:67:40
--> $DIR/numbers.rs:66: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -44,13 +44,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `f32`
--> $DIR/numbers.rs:68:40
--> $DIR/numbers.rs:67: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -59,13 +59,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `u32`
--> $DIR/numbers.rs:69:40
--> $DIR/numbers.rs:68: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -74,13 +74,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `u64`
--> $DIR/numbers.rs:70:40
--> $DIR/numbers.rs:69: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -89,13 +89,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `i64`
--> $DIR/numbers.rs:71:40
--> $DIR/numbers.rs:70: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -104,13 +104,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `f64`
--> $DIR/numbers.rs:72:40
--> $DIR/numbers.rs:71: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -119,13 +119,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:73:39
--> $DIR/numbers.rs:72: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -134,13 +134,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i8` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:74:39
--> $DIR/numbers.rs:73: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -149,13 +149,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `i16`
--> $DIR/numbers.rs:76:40
--> $DIR/numbers.rs:75: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -164,13 +164,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `u16`
--> $DIR/numbers.rs:77:40
--> $DIR/numbers.rs:76: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -179,13 +179,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `i32`
--> $DIR/numbers.rs:78:40
--> $DIR/numbers.rs:77: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -194,13 +194,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `f32`
--> $DIR/numbers.rs:79:40
--> $DIR/numbers.rs:78: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -209,13 +209,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `u32`
--> $DIR/numbers.rs:80:40
--> $DIR/numbers.rs:79: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -224,13 +224,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `u64`
--> $DIR/numbers.rs:81:40
--> $DIR/numbers.rs:80: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -239,13 +239,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `i64`
--> $DIR/numbers.rs:82:40
--> $DIR/numbers.rs:81: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -254,13 +254,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `f64`
--> $DIR/numbers.rs:83:40
--> $DIR/numbers.rs:82: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -269,13 +269,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:84:39
--> $DIR/numbers.rs:83: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -284,13 +284,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u8` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:85:39
--> $DIR/numbers.rs:84: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -299,13 +299,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i16` cannot be safely transmuted into `i32`
--> $DIR/numbers.rs:87:40
--> $DIR/numbers.rs:86: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -314,13 +314,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i16` cannot be safely transmuted into `f32`
--> $DIR/numbers.rs:88:40
--> $DIR/numbers.rs:87: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -329,13 +329,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i16` cannot be safely transmuted into `u32`
--> $DIR/numbers.rs:89:40
--> $DIR/numbers.rs:88: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -344,13 +344,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i16` cannot be safely transmuted into `u64`
--> $DIR/numbers.rs:90:40
--> $DIR/numbers.rs:89: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -359,13 +359,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i16` cannot be safely transmuted into `i64`
--> $DIR/numbers.rs:91:40
--> $DIR/numbers.rs:90: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -374,13 +374,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i16` cannot be safely transmuted into `f64`
--> $DIR/numbers.rs:92:40
--> $DIR/numbers.rs:91: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -389,13 +389,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i16` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:93:39
--> $DIR/numbers.rs:92: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -404,13 +404,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i16` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:94:39
--> $DIR/numbers.rs:93: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -419,13 +419,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u16` cannot be safely transmuted into `i32`
--> $DIR/numbers.rs:96:40
--> $DIR/numbers.rs:95: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -434,13 +434,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u16` cannot be safely transmuted into `f32`
--> $DIR/numbers.rs:97:40
--> $DIR/numbers.rs:96: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -449,13 +449,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u16` cannot be safely transmuted into `u32`
--> $DIR/numbers.rs:98:40
--> $DIR/numbers.rs:97: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -464,13 +464,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u16` cannot be safely transmuted into `u64`
--> $DIR/numbers.rs:99:40
--> $DIR/numbers.rs:98: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -479,13 +479,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u16` cannot be safely transmuted into `i64`
--> $DIR/numbers.rs:100:40
--> $DIR/numbers.rs:99: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -494,13 +494,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u16` cannot be safely transmuted into `f64`
--> $DIR/numbers.rs:101:40
--> $DIR/numbers.rs:100: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -509,13 +509,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u16` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:102:39
--> $DIR/numbers.rs:101: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -524,13 +524,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u16` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:103:39
--> $DIR/numbers.rs:102: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -539,13 +539,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i32` cannot be safely transmuted into `u64`
--> $DIR/numbers.rs:105:40
--> $DIR/numbers.rs:104: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -554,13 +554,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i32` cannot be safely transmuted into `i64`
--> $DIR/numbers.rs:106:40
--> $DIR/numbers.rs:105: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -569,13 +569,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i32` cannot be safely transmuted into `f64`
--> $DIR/numbers.rs:107:40
--> $DIR/numbers.rs:106: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -584,13 +584,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i32` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:108:39
--> $DIR/numbers.rs:107: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -599,13 +599,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i32` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:109:39
--> $DIR/numbers.rs:108: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -614,13 +614,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `f32` cannot be safely transmuted into `u64`
--> $DIR/numbers.rs:111:40
--> $DIR/numbers.rs:110: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -629,13 +629,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `f32` cannot be safely transmuted into `i64`
--> $DIR/numbers.rs:112:40
--> $DIR/numbers.rs:111: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -644,13 +644,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `f32` cannot be safely transmuted into `f64`
--> $DIR/numbers.rs:113:40
--> $DIR/numbers.rs:112: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -659,13 +659,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `f32` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:114:39
--> $DIR/numbers.rs:113: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -674,13 +674,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `f32` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:115:39
--> $DIR/numbers.rs:114: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -689,13 +689,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u32` cannot be safely transmuted into `u64`
--> $DIR/numbers.rs:117:40
--> $DIR/numbers.rs:116: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -704,13 +704,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u32` cannot be safely transmuted into `i64`
--> $DIR/numbers.rs:118:40
--> $DIR/numbers.rs:117: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -719,13 +719,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u32` cannot be safely transmuted into `f64`
--> $DIR/numbers.rs:119:40
--> $DIR/numbers.rs:118: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -734,13 +734,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u32` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:120:39
--> $DIR/numbers.rs:119: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -749,13 +749,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u32` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:121:39
--> $DIR/numbers.rs:120: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -764,13 +764,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u64` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:123:39
--> $DIR/numbers.rs:122: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -779,13 +779,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `u64` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:124:39
--> $DIR/numbers.rs:123: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -794,13 +794,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i64` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:126:39
--> $DIR/numbers.rs:125: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -809,13 +809,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `i64` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:127:39
--> $DIR/numbers.rs:126: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -824,13 +824,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `f64` cannot be safely transmuted into `u128`
--> $DIR/numbers.rs:129:39
--> $DIR/numbers.rs:128: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function
@ -839,13 +839,13 @@ LL | Dst: BikeshedIntrinsicFrom<Src>
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_transmutable`
error[E0277]: `f64` cannot be safely transmuted into `i128`
--> $DIR/numbers.rs:130:39
--> $DIR/numbers.rs:129: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
--> $DIR/numbers.rs:14:14
|
LL | pub fn is_transmutable<Src, Dst>()
| --------------- required by a bound in this function

View file

@ -5,7 +5,6 @@
#![crate_type = "lib"]
#![feature(transmutability)]
#![allow(dead_code)]
#![allow(incomplete_features)]
mod assert {
use std::mem::BikeshedIntrinsicFrom;

View file

@ -4,7 +4,6 @@
#![feature(transmutability)]
#![feature(marker_trait_attr)]
#![allow(dead_code)]
#![allow(incomplete_features)]
mod assert {
use std::mem::{Assume, BikeshedIntrinsicFrom};

View file

@ -1,5 +1,4 @@
#![feature(type_alias_impl_trait)]
#![allow(incomplete_features)]
trait MyTrait {}

View file

@ -1,5 +1,5 @@
error[E0119]: conflicting implementations of trait `MyTrait` for type `()`
--> $DIR/issue-65384.rs:10:1
--> $DIR/issue-65384.rs:9:1
|
LL | impl MyTrait for () {}
| ------------------- first implementation here