// `Self` as a constructor is currently allowed when the outer item is not generic. //@ check-pass struct S0(usize); impl S0 { fn foo() { const C: S0 = Self(0); //~^ WARN can't reference `Self` constructor from outer item //~| WARN this was previously accepted by the compiler but is being phased out fn bar() -> S0 { Self(0) //~^ WARN can't reference `Self` constructor from outer item //~| WARN this was previously accepted by the compiler but is being phased out } } } fn main() {}