Based on my understanding of the RFC, associated types should be able to specify bounds, yet the following does not work:
#![feature(associated_types)]
pub trait Cancel {
fn cancel(self);
}
pub trait Foo {
type C: Cancel;
fn stuff(self) -> <Self as Foo>::C;
}
pub fn main() {
}