use std::ops::Deref; trait PointerFamily { type Pointer: Deref; //~^ ERROR generic associated types are unstable type Pointer2: Deref where T: Clone, U: Clone; //~^ ERROR generic associated types are unstable //~| ERROR where clauses on associated types are unstable } struct Foo; impl PointerFamily for Foo { type Pointer = Box; //~^ ERROR generic associated types are unstable type Pointer2 = Box; //~^ ERROR generic associated types are unstable //~| ERROR the trait bound `U32: Clone` is not satisfied } trait Bar { type Assoc where Self: Sized; //~^ ERROR where clauses on associated types are unstable } impl Bar for Foo { type Assoc = Foo where Self: Sized; //~^ ERROR where clauses on associated types are unstable } fn main() {}