#![feature(impl_trait_in_assoc_type)] | |
//@ build-pass (FIXME(62277): could be check-pass?) | |
trait Bar {} | |
struct Dummy; | |
impl Bar for Dummy {} | |
trait Foo { | |
type Assoc: Bar; | |
fn foo() -> Self::Assoc; | |
fn bar() -> Self::Assoc; | |
} | |
impl Foo for i32 { | |
type Assoc = impl Bar; | |
fn foo() -> Self::Assoc { | |
Dummy | |
} | |
fn bar() -> Self::Assoc { | |
Dummy | |
} | |
} | |
fn main() {} |