22 lines
326 B
Rust
22 lines
326 B
Rust
// run-pass
|
|
// compile-flags:-C debuginfo=2
|
|
// edition:2018
|
|
|
|
use core::marker::PhantomData;
|
|
|
|
pub struct Foo<T: ?Sized, A>(
|
|
PhantomData<(A, T)>,
|
|
);
|
|
|
|
enum Never {}
|
|
|
|
impl<T: ?Sized> Foo<T, Never> {
|
|
fn new_foo() -> Foo<T, Never> {
|
|
Foo(PhantomData)
|
|
}
|
|
}
|
|
|
|
fn main() {
|
|
let _ = Foo::<[()], Never>::new_foo();
|
|
}
|