diff options
Diffstat (limited to 'src/test/compile-fail')
| -rw-r--r-- | src/test/compile-fail/for-loop-refutable-pattern-error-message.rs | 16 | ||||
| -rw-r--r-- | src/test/compile-fail/precise-refutable-pattern-errors.rs | 32 |
2 files changed, 48 insertions, 0 deletions
diff --git a/src/test/compile-fail/for-loop-refutable-pattern-error-message.rs b/src/test/compile-fail/for-loop-refutable-pattern-error-message.rs new file mode 100644 index 00000000000..8b00b614909 --- /dev/null +++ b/src/test/compile-fail/for-loop-refutable-pattern-error-message.rs @@ -0,0 +1,16 @@ +// Copyright 2014 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or +// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license +// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + + +fn main() { + for + &1 //~ ERROR refutable pattern in `for` loop binding + in [1].iter() {} +} diff --git a/src/test/compile-fail/precise-refutable-pattern-errors.rs b/src/test/compile-fail/precise-refutable-pattern-errors.rs new file mode 100644 index 00000000000..efa2dbad83f --- /dev/null +++ b/src/test/compile-fail/precise-refutable-pattern-errors.rs @@ -0,0 +1,32 @@ +// Copyright 2014 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or +// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license +// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + + +fn func( + ( + 1, //~ ERROR refutable pattern in function argument + ( + Some( //~ ERROR refutable pattern in function argument + 1), // nested, so no warning. + 2..3 //~ ERROR refutable pattern in function argument + ) + ): (int, (Option<int>, int)) + ) {} + +fn main() { + let ( + 1, //~ ERROR refutable pattern in local binding + ( + Some( //~ ERROR refutable pattern in local binding + 1), // nested, so no warning. + 2..3 //~ ERROR refutable pattern in local binding + ) + ) = (1, (None, 2)); +} |
