diff options
| author | Huon Wilson <dbau.pp+github@gmail.com> | 2013-05-10 16:12:19 +1000 | 
|---|---|---|
| committer | Huon Wilson <dbau.pp+github@gmail.com> | 2013-05-10 18:34:19 +1000 | 
| commit | f6743fea70e99efc33f6890770da8c0f91723311 (patch) | |
| tree | bea6b5eedf23690d16021815c4c1d9d61a665393 /src/test/compile-fail/disallowed-deconstructing-destructing-struct.rs | |
| parent | ad8e236f32fccf6ec99025e2ba77f79b4c98d399 (diff) | |
| download | rust-f6743fea70e99efc33f6890770da8c0f91723311.tar.gz rust-f6743fea70e99efc33f6890770da8c0f91723311.zip | |
librustc: allow destructuring of structs with destructors if the pattern has no moves.
This check only works for `match`s, the checks (incorrectly) do not run for patterns in `let`s.
Diffstat (limited to 'src/test/compile-fail/disallowed-deconstructing-destructing-struct.rs')
| -rw-r--r-- | src/test/compile-fail/disallowed-deconstructing-destructing-struct.rs | 30 | 
1 files changed, 0 insertions, 30 deletions
| diff --git a/src/test/compile-fail/disallowed-deconstructing-destructing-struct.rs b/src/test/compile-fail/disallowed-deconstructing-destructing-struct.rs deleted file mode 100644 index fa34c056794..00000000000 --- a/src/test/compile-fail/disallowed-deconstructing-destructing-struct.rs +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2012 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. - -struct X { - x: ~str, -} - -impl Drop for X { - fn finalize(&self) { - error!("value: %s", self.x); - } -} - -fn unwrap(x: X) -> ~str { - let X { x: y } = x; //~ ERROR deconstructing struct not allowed in pattern - y -} - -fn main() { - let x = X { x: ~"hello" }; - let y = unwrap(x); - error!("contents: %s", y); -} | 
