diff options
author | Clément Pit--Claudel <clement.pitclaudel@live.com> | 2015-07-23 11:57:19 -0700 |
---|---|---|
committer | Clément Pit--Claudel <clement.pitclaudel@live.com> | 2015-07-23 11:57:19 -0700 |
commit | 3f886d1789d50400ffba2befdc2ae0e8d5c79cbe (patch) | |
tree | 70b54a2e8b21c82dbd06ed46c716a281dc8efa26 /Test/dafny0/columns.dfy | |
parent | 1763ad8e4d6b631fe966b394ae2dbafa7d803627 (diff) |
Fix: Unify column numbers in Dafny's errors
Dafny counts from 0, but Boogie counts from 1. Tokens are 1-based. Thus when we
print tokens, we need to decrement the column number. This was done for resolver
errors, but not for verification or parsing errors. In addition, parsing errors
were inconsistent with resolution errors case-wise.
Unfortunately, the fix affects the output of many tests.
Diffstat (limited to 'Test/dafny0/columns.dfy')
-rw-r--r-- | Test/dafny0/columns.dfy | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Test/dafny0/columns.dfy b/Test/dafny0/columns.dfy new file mode 100644 index 00000000..e36142be --- /dev/null +++ b/Test/dafny0/columns.dfy @@ -0,0 +1,10 @@ +// RUN: %dafny "%s" > "%t"
+// RUN: %diff "%s.expect" "%t"
+
+// Dafny counts columns from 0, but Boogie from one, so for a while there were small bugs with that.
+
+static method A(x:int) requires x > 0 { // error os 's'
+ assert (forall y :: y > x ==> y > 100); // error on '('
+ assert x != 1; // error on '!'
+ assert x in {}; // error on 'i'
+}
|