summaryrefslogtreecommitdiff
path: root/Test/floats/float3.bpl
diff options
context:
space:
mode:
authorGravatar RustanLeino <leino@microsoft.com>2016-08-17 13:40:57 -0700
committerGravatar GitHub <noreply@github.com>2016-08-17 13:40:57 -0700
commit12d1543333babd202d76e259418dd03c0c7c56c3 (patch)
tree69bd181ccb97621378ab630a1357bd5583cc96a8 /Test/floats/float3.bpl
parent529b1bc37b6da3f40dc85aef4cf252e9c98dd566 (diff)
parent2b64144fb02b68d00188ee81c27afa5fbc026b5b (diff)
Merge pull request #35 from Checkmate50/master
Floating Point Support
Diffstat (limited to 'Test/floats/float3.bpl')
-rw-r--r--Test/floats/float3.bpl27
1 files changed, 27 insertions, 0 deletions
diff --git a/Test/floats/float3.bpl b/Test/floats/float3.bpl
new file mode 100644
index 00000000..507c4127
--- /dev/null
+++ b/Test/floats/float3.bpl
@@ -0,0 +1,27 @@
+// RUN: %boogie -proverWarnings:1 "%s" > "%t"
+// RUN: %diff "%s.expect" "%t"
+procedure main() returns () {
+ var x : float24e8;
+ var y : float24e8;
+ var z : float24e8;
+
+ z := x + y;
+ z := x - y;
+ z := x * y;
+ assume(y != 0e0f24e8);
+ z := x / y;
+
+ z := (0e127f24e8 + 0e127f24e8 + 0e0f24e8);
+ assert(z == 0e128f24e8);
+
+ z := 0e128f24e8 - 0e127f24e8;
+ assert(z == 0e127f24e8);
+
+ z := 0e127f24e8 * 0e127f24e8;
+ assert(z == 0e127f24e8);
+
+ z := 0e127f24e8 / 0e127f24e8;
+ assert(z == 0e127f24e8);
+
+ return;
+} \ No newline at end of file