Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Move indentation of error messages to the ConsoleErrorReporter | Clément Pit--Claudel | 2015-08-20 |
| | | | | This indentation is just needed by CLI-based clients | ||
* | Discard error messages that refer to a non-nested TokenWrapper. | Clément Pit--Claudel | 2015-08-20 |
| | | | | | | | | The VS extension already did that, but it also filtered out nested tokens. That prevented info about triggers from being reported. Other interfaces (the CLI and Emacs, in particular) should have the same ability. Surprinsingly, this doesn't cause any tests failures. | ||
* | Add unit tests for trigger-related error messages | Clément Pit--Claudel | 2015-08-20 |
| | |||
* | Simplify error reporting in the trigger generator to get cleaner messages | Clément Pit--Claudel | 2015-08-20 |
| | |||
* | Mark a few reporting functions as static | Clément Pit--Claudel | 2015-08-20 |
| | |||
* | Add a test to show how trigger splitting balances the downsides of loop ↵ | Clément Pit--Claudel | 2015-08-20 |
| | | | | detection | ||
* | Allow users to disable quantifier splitting by with a {:split false} attribute | Clément Pit--Claudel | 2015-08-20 |
| | |||
* | Add a wishlist folder to the test suite, with things that we do not support ↵ | Clément Pit--Claudel | 2015-08-19 |
| | | | | | | | (yet!) The curent examples include semi-bugs regarding calc statements and strings, and stuff about sequences | ||
* | Add a test to check that there are as many errors as failed preconditions | Clément Pit--Claudel | 2015-08-19 |
| | |||
* | Add tests for quantifier splitting and trigger generation | Clément Pit--Claudel | 2015-08-19 |
| | |||
* | Print matches for triggers as they appear in the buffer | Clément Pit--Claudel | 2015-08-19 |
| | | | | | Triggers themselves, however, are printed exactly as used. For example, a term (x !in s) yields a trigger (x in s). | ||
* | Add a check for SplitQuantifiers that had been incorrectly left out from the ↵ | Clément Pit--Claudel | 2015-08-19 |
| | | | | merge | ||
* | Factor out some AST visiting code | Clément Pit--Claudel | 2015-08-19 |
| | |||
* | runTests: Accept tests one by one, even if they are given as a .lst file | Clément Pit--Claudel | 2015-08-19 |
| | |||
* | Use /tracePO instead of /trace in the server | Clément Pit--Claudel | 2015-08-19 |
| | | | | | This removes the need for special treatment of test input (/trace includes timings in the output, which are not suitable for tests. /tracePO does not) | ||
* | Enable unicode output in the VS extension | Clément Pit--Claudel | 2015-08-19 |
| | |||
* | server: always print tooltips | Clément Pit--Claudel | 2015-08-19 |
| | |||
* | Collect ApplyExpr nodes when looking for trigger candidates | Clément Pit--Claudel | 2015-08-19 |
| | |||
* | Fix the equality test for literal expressions | Clément Pit--Claudel | 2015-08-19 |
| | | | | (compare by value, not by reference to boxed value) | ||
* | Generate triggers for nested quantifiers as well | Clément Pit--Claudel | 2015-08-19 |
| | | | | | | The new 'quantifiers' list keeps track of the quantifiers that have already been seen, so that they are not added both as a member of a collection and as a single quantifier. | ||
* | Merge. | Clément Pit--Claudel | 2015-08-19 |
|\ | | | | | | | | | Changes that were needed included preventing the InductionRewriter from iterating on a SplitQuantifier and using the new error reporting engine. | ||
* | | runTests: Include failed tests in mean completion time | Clément Pit--Claudel | 2015-08-19 |
| | | |||
* | | runTests: Report mean completion time of passed tests, excluding outliers | Clément Pit--Claudel | 2015-08-18 |
| | | |||
* | | Server: disable tracing when running tests, and fix an encoding issue. | Clément Pit--Claudel | 2015-08-18 |
| | | | | | | | | | | | | z3 doesn't support byte-order marks; thus using the default UTF8Encoding object (to allow printing nice warning signs) causes issues, as it sends a BOM before anything else. | ||
* | | Slightly improve the condition used to filter out trigger sets | Clément Pit--Claudel | 2015-08-18 |
| | | |||
* | | Check Reads and Decreases clauses for expressions that could prevent inlining | Clément Pit--Claudel | 2015-08-18 |
| | | |||
* | | Exclude folders named 'sandbox' from lit tests | Clément Pit--Claudel | 2015-08-18 |
| | | |||
* | | Refactor calls to 'new CallCmd' and clear a few FIXMEs | Clément Pit--Claudel | 2015-08-18 |
| | | |||
* | | Use nested tokens in the quantifier splitter | Clément Pit--Claudel | 2015-08-18 |
| | | | | | | | | | | This allows it to report the source of the error, giving better feedback to the user about which precondition to a function failed to hold, for example. | ||
* | | Cleanup indentation of trigger warnings | Clément Pit--Claudel | 2015-08-19 |
| | | |||
* | | Small cleanups, fixes, and refactorings | Clément Pit--Claudel | 2015-08-18 |
| | | | | | | | | | | In particular, start detecting loops between terms that don't look like each other at the Dafny level, such as {a[x]} and {x in a} (when a is a multiset) | ||
* | | Use a nice warning symbol in some warning messages | Clément Pit--Claudel | 2015-08-18 |
| | | | | | | | | | | This is useful because trigger-related messages can contain quite a bit of information, especially if they include info about multiple split quantifiers. | ||
| * | Changed hover-text location for recursive ind/co-lemma calls | Rustan Leino | 2015-08-17 |
| | | |||
| * | Update the way bounds are discovered to try to choose "better" bounds. | Bryan Parno | 2015-08-17 |
| | | |||
* | | Review preceding commit with Rustan | Clément Pit--Claudel | 2015-08-17 |
| | | |||
* | | Start committing split quantifiers | Clément Pit--Claudel | 2015-08-14 |
| | | | | | | | | | | | | | | | | | | This requires rewriting the parts of the AST that contain these quantifiers. We unfortunately don't have facilities to do such rewrites at the moment (and there are loops in the AST, so it would be hard to write such a facility). As a workaround, this commit introduces a field in quantifier expressions, SplitQuantifiers. Code that manipulate triggers is expected to look for this field, and ignore the other fields if that one is found. | ||
* | | Implement self-loop detection | Clément Pit--Claudel | 2015-08-14 |
| | | | | | | | | | | | | | | | | | | | | Implementing loop detection between multiple triggers is much harder, as it seems to require walking an exponentially sized graph. Self-loop detection is still a net gain compared to the current situation: we used to not detect loops in large quantifiers; not we break these apart, suppress the loops where we can in the smaller parts, and report the ones that we can't suppress. It could be that the broken-up quantifiers are mutually recursive, but these cases would have already led to a loop in the past. | ||
* | | Start committing generated triggers when /autoTriggers is 1 | Clément Pit--Claudel | 2015-08-14 |
| | | |||
* | | Run the trigger rewriter after the quantifier splitter | Clément Pit--Claudel | 2015-08-14 |
| | | |||
* | | Draft out a more advanced version of trigger generation | Clément Pit--Claudel | 2015-08-19 |
| | | | | | | | | This new version will include a cleaner pipeline, and trigger splitting. | ||
* | | Refactor the error reporting code | Clément Pit--Claudel | 2015-08-18 |
| | | | | | | | | | | The new error reporting system has a simpler interface, isn't tied to the resolver, and contains error source information. | ||
* | | server: Add a Checked configuration | Clément Pit--Claudel | 2015-08-14 |
| | | |||
| * | Merge | Clément Pit--Claudel | 2015-08-13 |
| |\ | |||
| * | | Update INSTALL notes to mention the wrapper script | Clément Pit--Claudel | 2015-08-13 |
| | | | |||
| * | | Add a UniqueIdPrefix in the server and bump up the prover kill time | Clément Pit--Claudel | 2015-08-13 |
| | | | |||
| | * | Add a wrapper script around the Dafny binary (for mono). | Clément Pit--Claudel | 2015-08-13 |
| | | | |||
| | * | Changed dafny3/Filter.dfy to use higher-order functions instead of the ↵ | leino | 2015-08-12 |
| | | | | | | | | | | | | previous function handles | ||
| | * | Change the induction heuristic for lemmas to also look in precondition for ↵ | leino | 2015-08-12 |
| | | | | | | | | | | | | | | | | | | clues about which parameters to include. As a result, improved many test cases (see, e.g., dafny4/NipkowKlein-chapter7.dfy!) and beautified some others. | ||
* | | | Add a few utility methods to the visitors | Clément Pit--Claudel | 2015-08-12 |
| | | | |||
* | | | runTests.py: Pretty-print stderr output to TRACE upon test failure | Clément Pit--Claudel | 2015-08-12 |
|/ / |