diff options
author | qadeer <unknown> | 2014-07-15 19:47:44 -0700 |
---|---|---|
committer | qadeer <unknown> | 2014-07-15 19:47:44 -0700 |
commit | 9c1c28a5e28f76af29805e6dd8b4b34c99fbe1b4 (patch) | |
tree | 9e02ec556858d05124bb3547da664db838382a3a /Test/og/linear-set2.bpl | |
parent | 74090e6fc892db326c6f98b8adb790f1f09fba41 (diff) |
updated the linear type system based on Chris' design with linear, linear_in, linear_out
Diffstat (limited to 'Test/og/linear-set2.bpl')
-rw-r--r-- | Test/og/linear-set2.bpl | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/Test/og/linear-set2.bpl b/Test/og/linear-set2.bpl index 73ffb9ad..11d24605 100644 --- a/Test/og/linear-set2.bpl +++ b/Test/og/linear-set2.bpl @@ -24,7 +24,7 @@ var {:phase 1} x: int; var {:phase 1} l: X;
const nil: X;
-procedure Split({:linear "x"} xls: [X]bool) returns ({:linear "x"} xls1: [X]bool, {:linear "x"} xls2: [X]bool);
+procedure Split({:linear_in "x"} xls: [X]bool) returns ({:linear "x"} xls1: [X]bool, {:linear "x"} xls2: [X]bool);
ensures xls == MapOr(xls1, xls2) && xls1 != None() && xls2 != None();
procedure Allocate() returns ({:linear "tid"} xls: X);
@@ -39,7 +39,7 @@ ensures {:atomic} |{A: assume l == nil; l := tidls; return true; }|; procedure {:yields} {:phase 0,1} Unlock();
ensures {:atomic} |{A: l := nil; return true; }|;
-procedure {:yields} {:phase 1} main({:linear "tid"} tidls': X, {:linear "x"} xls': [X]bool)
+procedure {:yields} {:phase 1} main({:linear_in "tid"} tidls': X, {:linear_in "x"} xls': [X]bool)
requires {:phase 1} tidls' != nil && xls' == All();
{
var {:linear "tid"} tidls: X;
@@ -66,7 +66,7 @@ requires {:phase 1} tidls' != nil && xls' == All(); yield;
}
-procedure {:yields} {:phase 1} thread({:linear "tid"} tidls': X, {:linear "x"} xls': [X]bool)
+procedure {:yields} {:phase 1} thread({:linear_in "tid"} tidls': X, {:linear_in "x"} xls': [X]bool)
requires {:phase 1} tidls' != nil && xls' != None();
{
var {:linear "x"} xls: [X]bool;
|