use std::marker; struct Foo( marker::PhantomData<(A,B,C)>); impl Foo { fn new() -> Foo {Foo(marker::PhantomData)} } fn main() { Foo::::new(); //~^ ERROR wrong number of type arguments }