// check-pass // aux-build:option_future.rs // // Check that if we promise to not impl what would overlap it doesn't actually overlap #![feature(rustc_attrs)] #![feature(with_negative_coherence)] extern crate option_future as lib; use lib::Future; trait Termination {} impl Termination for Option where E: Sized {} impl Termination for F where F: Future + Sized {} fn main() {}