27 lines
854 B
Rust
27 lines
854 B
Rust
|
//@ run-rustfix
|
||
|
|
||
|
struct GenericAssocMethod<T>(T);
|
||
|
|
||
|
impl<T> GenericAssocMethod<T> {
|
||
|
fn default_hello() {}
|
||
|
fn self_ty_hello(_: Self) {}
|
||
|
fn self_ty_ref_hello(_: &Self) {}
|
||
|
}
|
||
|
|
||
|
fn main() {
|
||
|
// Test for inferred types
|
||
|
let x = GenericAssocMethod(33);
|
||
|
GenericAssocMethod::<_>::self_ty_ref_hello(&x);
|
||
|
//~^ ERROR no method named `self_ty_ref_hello` found
|
||
|
GenericAssocMethod::<_>::self_ty_hello(x);
|
||
|
//~^ ERROR no method named `self_ty_hello` found
|
||
|
// Test for known types
|
||
|
let y = GenericAssocMethod(33i32);
|
||
|
GenericAssocMethod::<i32>::default_hello();
|
||
|
//~^ ERROR no method named `default_hello` found
|
||
|
GenericAssocMethod::<i32>::self_ty_ref_hello(&y);
|
||
|
//~^ ERROR no method named `self_ty_ref_hello` found
|
||
|
GenericAssocMethod::<i32>::self_ty_hello(y);
|
||
|
//~^ ERROR no method named `self_ty_hello` found
|
||
|
}
|