summary refs log tree commit diff
path: root/src/test
diff options
context:
space:
mode:
authorTim Chevalier <chevalier@alum.wellesley.edu>2011-07-21 16:03:30 -0700
committerTim Chevalier <chevalier@alum.wellesley.edu>2011-07-21 16:11:34 -0700
commita9a1392b2c1fece9447a2b834896b4316c5dbfff (patch)
treee6f912fef11732b31e86b685c48938c0d9b8a895 /src/test
parent2261ddc717485dc06e4dbd255947549816f37e4b (diff)
downloadrust-a9a1392b2c1fece9447a2b834896b4316c5dbfff.tar.gz
rust-a9a1392b2c1fece9447a2b834896b4316c5dbfff.zip
Instantiate function preconditions inside the function body
so that if we have a function like:
f(...) : p(x) {
  ...
}

p(x) is true inside the body of f.

Closes #694.
Diffstat (limited to 'src/test')
-rw-r--r--src/test/run-pass/typestate-transitive.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/test/run-pass/typestate-transitive.rs b/src/test/run-pass/typestate-transitive.rs
new file mode 100644
index 00000000000..86dacb2f8e0
--- /dev/null
+++ b/src/test/run-pass/typestate-transitive.rs
@@ -0,0 +1,8 @@
+pred p(int i) -> bool { true }
+
+fn f(int i) : p(i) -> int { i }
+
+fn g(int i) : p(i) -> int { f(i) }
+
+fn main() {
+}