diff options
| author | Seo Sanghyeon <sanxiyn@gmail.com> | 2016-06-10 21:16:44 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-06-10 21:16:44 +0900 |
| commit | b6940932d42ba6dd5ae482787bd8fc05bb14e77b (patch) | |
| tree | 433e0d3a12a68b8be84a1ec68779b40f21b9226a | |
| parent | b2581974a31a6767a7109fc86ecbd2225d87dd5c (diff) | |
| parent | 4c5f3a6d65247cafc44cf676111770899daa1c0f (diff) | |
| download | rust-b6940932d42ba6dd5ae482787bd8fc05bb14e77b.tar.gz rust-b6940932d42ba6dd5ae482787bd8fc05bb14e77b.zip | |
Rollup merge of #34136 - imjacobclark:ice-test-case-25579, r=nikomatsakis
Test case for borrowk ICE #25579 r? @nikomatsakis Fixes #25579
| -rw-r--r-- | src/test/compile-fail/issue-25579.rs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/test/compile-fail/issue-25579.rs b/src/test/compile-fail/issue-25579.rs new file mode 100644 index 00000000000..849c9aa18c9 --- /dev/null +++ b/src/test/compile-fail/issue-25579.rs @@ -0,0 +1,27 @@ +// Copyright 2015 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. + +enum Sexpression { + Num(()), + Cons(&'static mut Sexpression) +} + +fn causes_ice(mut l: &mut Sexpression) { + loop { match l { + &mut Sexpression::Num(ref mut n) => {}, + &mut Sexpression::Cons(ref mut expr) => { //~ ERROR cannot borrow `l.0` + //~| ERROR cannot borrow `l.0` + l = &mut **expr; //~ ERROR cannot assign to `l` + } + }} +} + +fn main() { +} |
