summaryrefslogtreecommitdiff
path: root/Source/Core
Commit message (Collapse)AuthorAge
* Allow ":" in addition to "returns" in function definitions. Make the ↵Gravatar MichalMoskal2009-12-17
| | | | | | | | pretty-printer use ":" not "returns". Allow foo(x,y,z:int,p,q:ptr) kind of syntax in function definitions. Consequently foo(int,y:bool) is no longer allowed. Update the testsuite to match that.
* Z3 parameters to help it bail out of fruitless searches fasterGravatar mkawa2009-12-05
| | | | | print _all_ the attributes of an assert this time add simpletypes to the visitor
* print attributes in AssertCmd.EmitGravatar mkawa2009-12-02
|
* Added resolution and translation of algebraic datatypes and (in function ↵Gravatar rustanleino2009-11-20
| | | | | | bodies) match expressions. Addressed a couple of todos, including checking the well-formedness of quantifiers and if-then-else expressions in function bodies.
* Fixed bug in inlining (procedure *definitions* had been traversed by ↵Gravatar rustanleino2009-11-19
| | | | | | StandardVisitor while visiting commands). This solves Issue #6266.
* Redesigned the encoding of Dafny generics, including the built-in types set ↵Gravatar rustanleino2009-11-06
| | | | | | | | | | | | and seq. Regrettably, these changes--although improvements in Dafny's functionality--have caused Test/dafny0/BinaryTree.bpl and Test/dafny0/SchorrWaite.dfy to be significantly slower (the dafny0 test directory now takes 6:11 whereas it used to take 1:43). Improved some of the VSI-Benchmarks to use generics more fully, where the previous designed had just crashed. Included the previously commented-out loop invariants and assertions in VSI-Benchmarks/b8.dfy. Added a space in the pretty printing of Boogie coercion expressions.
* Fixed bugs in inlining, and added a test case.Gravatar rustanleino2009-10-14
| | | | This solves issue 5742, as reported in the MSR Boogie Issue Tracker on Codeplex.
* Added /z3lets switch, which governs which kinds of LET expressions are sent ↵Gravatar rustanleino2009-10-04
| | | | to Z3. By default, both LET TERM and LET FORMULA expressions are used. Mode /z3lets:2 uses only LET FORMULA, which works around a current Z3 issue with LET expressions and nested quantifiers.
* Added /z3multipleErrors flag for generation of multiple counterexamples per ↵Gravatar mkawa2009-09-23
| | | | assert (switches off z3's /@ flag).
* * Boogie and Dafny: added /cev:<file> optionGravatar rustanleino2009-09-15
| | | | | * SscBoogie: changed default setting for /modifiesOnLoop (we really should move this SscBoogie-specific code to the Spec# codeplex)
* Dafny:Gravatar rustanleino2009-09-14
| | | | | | | | * 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.
* Renaming ExtractExpr into BvExtractExpr to fit naming scheme of the other ↵Gravatar stobies2009-09-07
| | | | bitvector operations
* Sign assembliesGravatar stobies2009-08-17
|
* Changes needed in order to build Boogie using a freshly built Spec# compiler ↵Gravatar mikebarnett2009-08-10
| | | | and not just the LKG.
* Fixed problem where nullary function with definition had caused a crash.Gravatar rustanleino2009-08-07
|
* Initial set of files.Gravatar mikebarnett2009-07-15