From ff191a808e563d36b4c8bedbd2a67aa44156faf9 Mon Sep 17 00:00:00 2001 From: Wilco Kusee Date: Sun, 6 Jan 2019 15:05:04 +0100 Subject: Restrict use_self on nested items --- tests/ui/use_self.rs | 33 ++++++++++++++++++++++----------- 1 file changed, 22 insertions(+), 11 deletions(-) (limited to 'tests') diff --git a/tests/ui/use_self.rs b/tests/ui/use_self.rs index a01cb3e7021..f3bd4a05005 100644 --- a/tests/ui/use_self.rs +++ b/tests/ui/use_self.rs @@ -242,6 +242,28 @@ mod macros { } } +mod nesting { + struct Foo {} + impl Foo { + fn foo() { + use self::Foo; // Can't use Self here + struct Bar { + foo: Foo, // Foo != Self + } + } + } + + enum Enum { + A, + } + impl Enum { + fn method() { + use self::Enum::*; + static STATIC: Enum = Enum::A; // Can't use Self as type + } + } +} + mod issue3410 { struct A; @@ -255,14 +277,3 @@ mod issue3410 { fn a(_: Vec) {} } } - -mod issue3425 { - enum Enum { - A, - } - impl Enum { - fn a() { - use self::Enum::*; - } - } -} -- cgit 1.4.1-3-g733a5