From a336aa91db3a21dbbe5d281ece712535b1c9ed7d Mon Sep 17 00:00:00 2001 From: Kyle Stachowicz Date: Thu, 17 May 2018 22:17:06 -0700 Subject: [PATCH] Allow `unused_labels` in some compile-fail tests --- src/test/compile-fail/associated-types-outlives.rs | 1 + src/test/compile-fail/hygienic-label-1.rs | 1 + src/test/compile-fail/hygienic-label-2.rs | 5 ++++- src/test/compile-fail/hygienic-label-3.rs | 1 + src/test/compile-fail/hygienic-label-4.rs | 5 ++++- src/test/compile-fail/issue-27042.rs | 1 + src/test/compile-fail/issue-46311.rs | 1 + src/test/compile-fail/loop-break-value.rs | 1 + src/test/compile-fail/loop-proper-liveness.rs | 1 + src/test/compile-fail/resolve-label.rs | 1 + 10 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/test/compile-fail/associated-types-outlives.rs b/src/test/compile-fail/associated-types-outlives.rs index f070ab6799c0..1b255c149ccd 100644 --- a/src/test/compile-fail/associated-types-outlives.rs +++ b/src/test/compile-fail/associated-types-outlives.rs @@ -27,6 +27,7 @@ fn denormalise<'a, T>(t: &'a T) -> >::Bar { pub fn free_and_use Foo<'a>, F: for<'a> FnOnce(>::Bar)>(x: T, f: F) { let y; + #[allow(unused_labels)] 'body: loop { // lifetime annotations added for clarity 's: loop { y = denormalise(&x); break } drop(x); //~ ERROR cannot move out of `x` because it is borrowed diff --git a/src/test/compile-fail/hygienic-label-1.rs b/src/test/compile-fail/hygienic-label-1.rs index 305b43402da0..f2b8b79b099e 100644 --- a/src/test/compile-fail/hygienic-label-1.rs +++ b/src/test/compile-fail/hygienic-label-1.rs @@ -13,5 +13,6 @@ macro_rules! foo { } pub fn main() { + #[allow(unused_labels)] 'x: loop { foo!() } } diff --git a/src/test/compile-fail/hygienic-label-2.rs b/src/test/compile-fail/hygienic-label-2.rs index 24194d7bbe97..554dc190fcd3 100644 --- a/src/test/compile-fail/hygienic-label-2.rs +++ b/src/test/compile-fail/hygienic-label-2.rs @@ -9,7 +9,10 @@ // except according to those terms. macro_rules! foo { - ($e: expr) => { 'x: loop { $e } } + ($e: expr) => { + #[allow(unused_labels)] + 'x: loop { $e } + } } pub fn main() { diff --git a/src/test/compile-fail/hygienic-label-3.rs b/src/test/compile-fail/hygienic-label-3.rs index b107b71024da..0f819b7c6bb8 100644 --- a/src/test/compile-fail/hygienic-label-3.rs +++ b/src/test/compile-fail/hygienic-label-3.rs @@ -13,6 +13,7 @@ macro_rules! foo { } pub fn main() { + #[allow(unused_labels)] 'x: for _ in 0..1 { foo!() }; diff --git a/src/test/compile-fail/hygienic-label-4.rs b/src/test/compile-fail/hygienic-label-4.rs index 5bfcb6360e45..9936699cb466 100644 --- a/src/test/compile-fail/hygienic-label-4.rs +++ b/src/test/compile-fail/hygienic-label-4.rs @@ -9,7 +9,10 @@ // except according to those terms. macro_rules! foo { - ($e: expr) => { 'x: for _ in 0..1 { $e } } + ($e: expr) => { + #[allow(unused_labels)] + 'x: for _ in 0..1 { $e } + } } pub fn main() { diff --git a/src/test/compile-fail/issue-27042.rs b/src/test/compile-fail/issue-27042.rs index 23afa4b62963..79ce9fb78496 100644 --- a/src/test/compile-fail/issue-27042.rs +++ b/src/test/compile-fail/issue-27042.rs @@ -10,6 +10,7 @@ // Regression test for #27042. Test that a loop's label is included in its span. +#[allow(unused_labels)] fn main() { let _: i32 = 'a: // in this case, the citation is just the `break`: diff --git a/src/test/compile-fail/issue-46311.rs b/src/test/compile-fail/issue-46311.rs index 82f55f2c1424..0815712f0670 100644 --- a/src/test/compile-fail/issue-46311.rs +++ b/src/test/compile-fail/issue-46311.rs @@ -9,6 +9,7 @@ // except according to those terms. fn main() { + #[allow(unused_labels)] 'break: loop { //~ ERROR invalid label name `'break` } } diff --git a/src/test/compile-fail/loop-break-value.rs b/src/test/compile-fail/loop-break-value.rs index 938f7fba2a03..60478974e804 100644 --- a/src/test/compile-fail/loop-break-value.rs +++ b/src/test/compile-fail/loop-break-value.rs @@ -77,6 +77,7 @@ fn main() { } let _: i32 = 'a: loop { + #[allow(unused_labels)] let _: () = 'b: loop { break ('c: loop { break; diff --git a/src/test/compile-fail/loop-proper-liveness.rs b/src/test/compile-fail/loop-proper-liveness.rs index e411313c273b..b53b48ee5ed9 100644 --- a/src/test/compile-fail/loop-proper-liveness.rs +++ b/src/test/compile-fail/loop-proper-liveness.rs @@ -32,6 +32,7 @@ fn test2() { fn test3() { let x: i32; // Similarly, the use of variable `x` is unreachable. + #[allow(unused_labels)] 'a: loop { x = loop { return }; } diff --git a/src/test/compile-fail/resolve-label.rs b/src/test/compile-fail/resolve-label.rs index 6695e972f333..3d6616edbb57 100644 --- a/src/test/compile-fail/resolve-label.rs +++ b/src/test/compile-fail/resolve-label.rs @@ -8,6 +8,7 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +#[allow(unused_labels)] fn f() { 'l: loop { fn g() {