From d652155ae013f36a1ee17653a8e458baad2d9c2c Mon Sep 17 00:00:00 2001 From: Checkmate50 Date: Mon, 6 Jun 2016 23:14:18 -0600 Subject: Merging complete. Everything looks good *crosses fingers* --- Test/AbsHoudini/test2.bpl | 84 +++++++++++++++++++++++------------------------ 1 file changed, 42 insertions(+), 42 deletions(-) (limited to 'Test/AbsHoudini/test2.bpl') diff --git a/Test/AbsHoudini/test2.bpl b/Test/AbsHoudini/test2.bpl index 1272e7d9..38ec8c8a 100644 --- a/Test/AbsHoudini/test2.bpl +++ b/Test/AbsHoudini/test2.bpl @@ -1,42 +1,42 @@ -// RUN: %boogie -noinfer -contractInfer -printAssignment -inlineDepth:1 -abstractHoudini:IA[ConstantProp] "%s" > "%t" -// RUN: %diff "%s.expect" "%t" -var g: int; -var h: int; - -procedure foo() -modifies g, h; -ensures b0() || old(g) == g; -{ - call AcquireLock(); - call ReleaseLock(); -} - -procedure AcquireLock() -modifies g, h; -ensures b1() || old(g) == g; -{ - h := g; - g := 1; -} - -procedure ReleaseLock() -modifies g, h; -ensures b2() || old(g) == g; -{ - g := h; -} - -procedure main() -modifies g, h; -{ - g := 0; - call foo(); - assert Assert() || g == 0; -} - -function {:existential true} b0(): bool; -function {:existential true} b1(): bool; -function {:existential true} b2(): bool; -function {:existential true} Assert(): bool; - -// Expected: Assert = false, b0 = false, b1 = true, b2 = true +// RUN: %boogie -noinfer -contractInfer -printAssignment -inlineDepth:1 -abstractHoudini:IA[ConstantProp] "%s" > "%t" +// RUN: %diff "%s.expect" "%t" +var g: int; +var h: int; + +procedure foo() +modifies g, h; +ensures b0() || old(g) == g; +{ + call AcquireLock(); + call ReleaseLock(); +} + +procedure AcquireLock() +modifies g, h; +ensures b1() || old(g) == g; +{ + h := g; + g := 1; +} + +procedure ReleaseLock() +modifies g, h; +ensures b2() || old(g) == g; +{ + g := h; +} + +procedure main() +modifies g, h; +{ + g := 0; + call foo(); + assert Assert() || g == 0; +} + +function {:existential true} b0(): bool; +function {:existential true} b1(): bool; +function {:existential true} b2(): bool; +function {:existential true} Assert(): bool; + +// Expected: Assert = false, b0 = false, b1 = true, b2 = true -- cgit v1.2.3