mirror of https://github.com/rust-lang/rust.git
27 lines
571 B
Rust
27 lines
571 B
Rust
//@ compile-flags: --crate-type=lib
|
|
//@ revisions: current next
|
|
//@[next] compile-flags: -Znext-solver
|
|
|
|
#![feature(auto_traits)]
|
|
#![feature(unsafe_fields)]
|
|
#![allow(incomplete_features)]
|
|
|
|
enum UnsafeEnum {
|
|
Safe(u8),
|
|
Unsafe { unsafe field: u8 },
|
|
}
|
|
|
|
auto trait SafeAuto {}
|
|
|
|
fn impl_safe_auto(_: impl SafeAuto) {}
|
|
|
|
unsafe auto trait UnsafeAuto {}
|
|
|
|
fn impl_unsafe_auto(_: impl UnsafeAuto) {}
|
|
|
|
fn tests() {
|
|
impl_safe_auto(UnsafeEnum::Safe(42));
|
|
impl_unsafe_auto(UnsafeEnum::Safe(42));
|
|
//~^ ERROR the trait bound `UnsafeEnum: UnsafeAuto` is not satisfied
|
|
}
|