about summary refs log tree commit diff
path: root/src/test/compile-fail/tstate-while.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/compile-fail/tstate-while.rs')
-rw-r--r--src/test/compile-fail/tstate-while.rs10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/test/compile-fail/tstate-while.rs b/src/test/compile-fail/tstate-while.rs
new file mode 100644
index 00000000000..6091a0237a2
--- /dev/null
+++ b/src/test/compile-fail/tstate-while.rs
@@ -0,0 +1,10 @@
+pure fn is_even(i: int) -> bool { (i%2) == 0 }
+fn even(i: int) : is_even(i) -> int { i }
+
+fn f() {
+    let mut x: int = 10;
+    while 1 == 1 { x = 10; }
+    even(x); //! ERROR unsatisfied precondition
+}
+
+fn main() { f(); }