diff options
author | rustanleino <unknown> | 2009-09-14 20:43:33 +0000 |
---|---|---|
committer | rustanleino <unknown> | 2009-09-14 20:43:33 +0000 |
commit | 7429665eff7479892c2d17e3d0cb2146ad0c676e (patch) | |
tree | 3c20c3e1736ea3c8adbc8b6dca8f6e243368246b /Binaries | |
parent | 4ba12cfff31ffd1eaf381e98cd67885b7026d079 (diff) |
Dafny:
* Added DeclType(f)==C axioms, which for each field f says which class declares it.
Boogie:
* Changed behavior of free loop invariants. Now, a free loop invariant is ignored on the checking side, just like for free requires and free ensures. The new switch /alwaysAssumeFreeLoopInvariants flag gives the previous behavior.
* NOTE: I did NOT yet make the corresponding change for loop unrolling, but it is needed.
Diffstat (limited to 'Binaries')
-rw-r--r-- | Binaries/DafnyPrelude.bpl | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/Binaries/DafnyPrelude.bpl b/Binaries/DafnyPrelude.bpl index fa0d1529..9ff60f1b 100644 --- a/Binaries/DafnyPrelude.bpl +++ b/Binaries/DafnyPrelude.bpl @@ -181,6 +181,8 @@ const unique #loc.$Heap: $token; const unique alloc: Field bool;
+function DeclType<T>(Field T) returns (ClassName);
+
function $HeapSucc(HeapType, HeapType) returns (bool);
axiom (forall h: HeapType, k: HeapType :: { $HeapSucc(h,k) }
$HeapSucc(h,k) ==> (forall o: ref :: { k[o,alloc] } h[o,alloc] ==> k[o,alloc]));
|