| // issue#140796 | 
 |  | 
 | trait Bar { | 
 |     fn method() -> impl Sized; | 
 |     fn method() -> impl Sized;  //~ ERROR: the name `method` is defined multiple times | 
 | } | 
 |  | 
 | impl Bar for () {               //~ ERROR: not all trait items implemented, missing: `method` | 
 |     fn method() -> impl Sized { | 
 |         42 | 
 |     } | 
 |     fn method() -> impl Sized { //~ ERROR: duplicate definitions with name `method` | 
 |         42 | 
 |     } | 
 | } | 
 |  | 
 | trait T { | 
 |     fn method() -> impl Sized; | 
 | } | 
 |  | 
 | impl T for () { | 
 |     fn method() -> impl Sized { | 
 |         42 | 
 |     } | 
 |     fn method() -> impl Sized { //~ ERROR: duplicate definitions with name `method` | 
 |         42 | 
 |     } | 
 | } | 
 |  | 
 | trait Baz { | 
 |     fn foo(); | 
 |     fn foo() -> impl Sized;     //~ ERROR: the name `foo` is defined multiple times | 
 | } | 
 |  | 
 | trait Foo { | 
 |     fn foo() -> impl Sized; | 
 |     fn foo();                   //~ ERROR: the name `foo` is defined multiple times | 
 |     fn foo() -> impl Sized;     //~ ERROR: the name `foo` is defined multiple times | 
 | } | 
 |  | 
 | fn main() {} |