// { dg-additional-options "-w" } struct foo; fn bar() -> self::foo { crate::foo } fn baz() { let a: foo = self::bar(); crate::bar(); crate::self::foo(); // { dg-error "failed to resolve: .self. in paths can only be used in start position" "" { target *-*-* } .-1 } } type a = foo; type b = crate::foo; type c = self::foo; type d = crate::self::foo; // { dg-error "failed to resolve: .self. in paths can only be used in start position" "" { target *-*-* } .-1 }