summaryrefslogtreecommitdiff
path: root/Test/dafny0/Trait
diff options
context:
space:
mode:
authorGravatar Reza Ahmadi <reza.ahmadi@uta.fi>2014-07-31 17:48:42 +0300
committerGravatar Reza Ahmadi <reza.ahmadi@uta.fi>2014-07-31 17:48:42 +0300
commita5be808ee60f37b3e74e03660eab66c95154083e (patch)
treeeb3c3fe1bb400d3f877d67e084d2322365b5b05d /Test/dafny0/Trait
parent47de1c8add4f4ac5c390a96bbd8d2e5acaf87540 (diff)
added one more test case
Diffstat (limited to 'Test/dafny0/Trait')
-rw-r--r--Test/dafny0/Trait/TraitSpecsOverride0.dfy20
-rw-r--r--Test/dafny0/Trait/TraitSpecsOverride0.dfy.expect8
2 files changed, 23 insertions, 5 deletions
diff --git a/Test/dafny0/Trait/TraitSpecsOverride0.dfy b/Test/dafny0/Trait/TraitSpecsOverride0.dfy
index 5b4417c3..614adc2d 100644
--- a/Test/dafny0/Trait/TraitSpecsOverride0.dfy
+++ b/Test/dafny0/Trait/TraitSpecsOverride0.dfy
@@ -25,6 +25,13 @@ trait J
x := 1000;
y := y + x;
}
+
+ method arrM (y: array<int>, x: int, a: int, b: int) returns (c: int)
+ requires a > b;
+ requires y != null && y.Length > 0;
+ ensures c == a + b;
+ modifies y;
+ decreases x;
}
class C extends J
@@ -37,5 +44,16 @@ class C extends J
method M(kk:int) returns (ksos:int) //errors here, M must provide its own specifications
{
ksos:=10;
- }
+ }
+
+ method arrM (y1: array<int>, x1: int, a1: int, b1: int) returns (c1: int)
+ requires a1 > b1;
+ requires y1 != null && y1.Length > 0;
+ ensures c1 == a1 + b1;
+ modifies y1;
+ decreases x1;
+ {
+ y1[0] := a1 + b1;
+ c1 := a1 + b1;
+ }
} \ No newline at end of file
diff --git a/Test/dafny0/Trait/TraitSpecsOverride0.dfy.expect b/Test/dafny0/Trait/TraitSpecsOverride0.dfy.expect
index cbdcdf05..750e13e0 100644
--- a/Test/dafny0/Trait/TraitSpecsOverride0.dfy.expect
+++ b/Test/dafny0/Trait/TraitSpecsOverride0.dfy.expect
@@ -1,5 +1,5 @@
-TraitSpecsOverride0.dfy(32,17): Error: Function must provide its own Reads clauses anew
-TraitSpecsOverride0.dfy(32,17): Error: Function must provide its own Decreases clauses anew
-TraitSpecsOverride0.dfy(37,8): Error: Method must provide its own Requires clauses anew
-TraitSpecsOverride0.dfy(37,8): Error: Method must provide its own Ensures clauses anew
+TraitSpecsOverride0.dfy(39,17): Error: Function must provide its own Reads clauses anew
+TraitSpecsOverride0.dfy(39,17): Error: Function must provide its own Decreases clauses anew
+TraitSpecsOverride0.dfy(44,8): Error: Method must provide its own Requires clauses anew
+TraitSpecsOverride0.dfy(44,8): Error: Method must provide its own Ensures clauses anew
4 resolution/type errors detected in TraitSpecsOverride0.dfy