diff options
Diffstat (limited to 'tests/ui/for-loop-while/while-let-2.rs')
-rw-r--r-- | tests/ui/for-loop-while/while-let-2.rs | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/ui/for-loop-while/while-let-2.rs b/tests/ui/for-loop-while/while-let-2.rs new file mode 100644 index 000000000..b9a49b47c --- /dev/null +++ b/tests/ui/for-loop-while/while-let-2.rs @@ -0,0 +1,31 @@ +// run-pass + +#[allow(dead_code)] +fn macros() { + macro_rules! foo{ + ($p:pat, $e:expr, $b:block) => {{ + while let $p = $e $b + //~^ WARN irrefutable `while let` + //~| WARN irrefutable `while let` + }} + } + macro_rules! bar{ + ($p:pat, $e:expr, $b:block) => {{ + foo!($p, $e, $b) + }} + } + + foo!(_a, 1, { + println!("irrefutable pattern"); + }); + bar!(_a, 1, { + println!("irrefutable pattern"); + }); +} + +pub fn main() { + while let _a = 1 { //~ WARN irrefutable `while let` + println!("irrefutable pattern"); + break; + } +} |