rust/tests/ui/impl-trait/in-trait/wf-bounds.rs

29 lines
713 B
Rust
Raw Normal View History

2022-09-11 01:58:11 -05:00
// issue #101663
#![feature(return_position_impl_trait_in_trait)]
#![allow(incomplete_features)]
2023-06-30 15:05:17 -05:00
use std::fmt::Display;
2023-03-23 18:30:13 -05:00
trait Wf<T> {
type Output;
}
2022-09-11 01:58:11 -05:00
2023-06-30 15:05:17 -05:00
struct NeedsDisplay<T: Display>(T);
2022-09-11 01:58:11 -05:00
trait Uwu {
fn nya() -> impl Wf<Vec<[u8]>>;
//~^ ERROR the size for values of type `[u8]` cannot be known at compilation time
fn nya2() -> impl Wf<[u8]>;
//~^ ERROR the size for values of type `[u8]` cannot be known at compilation time
2023-03-23 18:30:13 -05:00
fn nya3() -> impl Wf<(), Output = impl Wf<Vec<[u8]>>>;
//~^ ERROR the size for values of type `[u8]` cannot be known at compilation time
2023-06-30 15:05:17 -05:00
fn nya4<T>() -> impl Wf<NeedsDisplay<T>>;
//~^ ERROR `T` doesn't implement `std::fmt::Display`
2022-09-11 01:58:11 -05:00
}
fn main() {}