summaryrefslogtreecommitdiff
path: root/test/regress/CMakeLists.txt
AgeCommit message (Collapse)Author
2018-10-18Add OptionException handling during initialization (#2466)Andres Noetzli
The initial motivation for this commit was that dump with an invalid tag was leading to a segfault. The reason for the segfault was as follows: 1. `api::Solver` creates an `ExprManager`, which is stored in a `unique_ptr` as a class member 2. The `api::Solver` tries to create an SmtEngine instance 3. The `SmtEnginePrivate` constructor subscribes to events in the NodeManager and starts registering option listeners 4. When the `SmtEnginePrivate` gets to registerSetDumpModeListener, it registers and notifies the DumpModeListener which calls Dump::setDumpFromString, which fails with an `OptionException` due to the invalid tag 5. While propagating the exception through `api::Solver`, the `ExprManager` is deleted but the non-existent `SmtEnginePrivate` is still subscribed to its events and there are still option listeners registered. This leads to a segfault because the NodeManager tries to notify the `SmtEnginePrivate` about deleted nodes This commit fixes the issue by catching the `OptionException` in `SmtEnginePrivate`, unsubscribing the `SmtEnginePrivate` from the NodeManager events and deleting its option listener registrations before rethrowing the exception. In addition, it changes the `Options::registerAndNotify()` method to immediately delete a registration if notifying the registration resulted in an ``OptionException`` (otherwise only the `ListenerCollection` knows about the registration and complains about it in its destructor). Finally, the commit adds a simple regression test for invalid dump tags.
2018-10-18cmake: Run regression level 2 for make check. (#2645)Mathias Preiner
2018-10-18Non-implied mode for model cores (#2653)Andrew Reynolds
2018-10-18Non-contributing find replace rewrite (#2652)Andrew Reynolds
2018-10-18Improve reduction for str.to.int (#2636)Andrew Reynolds
2018-10-18Constant length regular expression elimination (#2646)Andrew Reynolds
2018-10-12Reset input language for ExprMiner subsolver (#2624)Andres Noetzli
2018-10-11 Fix string ext inference for rewrites that introduce negation (#2618)Andrew Reynolds
2018-10-10Optimize regular expression elimination (#2612)Andrew Reynolds
2018-10-08Address slow sygus regressions (#2598)Andrew Reynolds
2018-10-05 Fix cache for sygus post-condition inference (#2592)Andrew Reynolds
2018-10-04Only use SKIP_RETURN_CODE with CMake 3.9.0+ (#2590)Andres Noetzli
With older versions of CMake, skipped tests are reported as failures, which is undesirable. This commit changes the CMakeLists file to only use the `SKIP_RETURN_CODE` property if a newer version of CMake is used.
2018-10-04Fix end constraint for regexp elimination (#2571)Andrew Reynolds
2018-10-03Fix stale op list in sets (#2572)Andrew Reynolds
2018-10-03Eliminate partial operators within lambdas during grammar normalization (#2570)Andrew Reynolds
2018-10-02cmake: Display skipped tests as not run (#2567)Andres Noetzli
Currently, the run_regression.py script just returns 0 when we skip a test due to a feature not supported by the current configuration. Returning 0 marks those tests as passed. To make it more clear which tests were skipped, this commit adds the `SKIP_RETURN_CODE` [0] property to the regression tests and changes the regression script to return 77 for skipped tests. The feature is supported since at least CMake 3.0 [0]. For backwards compatibility with autotools, returning 77 for skipped tests is only active when `--cmake` is passed to the run_regression.py script. [0] https://cmake.org/cmake/help/v3.0/prop_test/SKIP_RETURN_CODE.html
2018-10-02Allow (_ to_fp ...) in strict parsing mode (#2566)Andres Noetzli
When parsing with `--strict-parsing`, we are checking whether the operators that we encounter have been explicitly added to the `d_logicOperators` set in the `Parser` class. We did not do that for the indexed operator `(_ to_fp ...)` (which is represented by the kind `FLOATINGPOINT_TO_FP_GENERIC`). This commit adds the operator.
2018-10-01cmake: Add build target build-tests to build all test dependencies. (#2558)Mathias Preiner
2018-09-30Add rewrite for solving stoi (#2532)Andrew Reynolds
2018-09-27Fix Taylor overapproximation for large exponentials (#2538)Andrew Reynolds
2018-09-26 Fix homogeneous string constant rewrite (#2545)Andrew Reynolds
2018-09-26Makes SyGuS parsing more robust in invariant problems (#2509)Haniel Barbosa
2018-09-26cmake: Fix test target dependency issues. (#2540)Mathias Preiner
2018-09-26Enable quantified array regression. (#2539)Andrew Reynolds
2018-09-22cmake: Run make coverage in parallel by default.Mathias Preiner
2018-09-22cmake: More documentation, clean up.Aina Niemetz
2018-09-22cmake: Added target checkAina Niemetz
Targets 'check', 'units', 'systemtests' and 'regress' are now run in parallel with the number of available cores by default. This can be overriden by passing ARGS=-jN.
2018-09-22cmake: Rebase with current master, add new tests/source files.Mathias Preiner
2018-09-22cmake: Add dependencies for test targets and support for make coverage.Aina Niemetz
2018-09-22cmake: Enable parallel execution for test targets regress, units, systemtests.Aina Niemetz
2018-09-22cmake: Added regression tests and target make regress.Aina Niemetz
2018-09-22cmake: Added initial build infrastructure.Aina Niemetz
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback