summaryrefslogtreecommitdiff
path: root/src/util
diff options
context:
space:
mode:
authorAndres Noetzli <andres.noetzli@gmail.com>2018-08-10 15:23:21 -0700
committerGitHub <noreply@github.com>2018-08-10 15:23:21 -0700
commitc9ad9015ac941f5fe5c99d7234fe74cbd40da030 (patch)
treed74bce7b99fe02ade5dc05a98e530100adeae6e7 /src/util
parent0a02fd2b69c0c0f454fc33d8028b24f4fcf431de (diff)
Do not use static initialization in CxxTest runner (#2293)
The static initialization in the CxxTest runner was causing problems when having `std::unique_ptr`s in test classes. When the ExprManager's deconstructor is called, we count on certain static objects to be around (e.g. https://github.com/CVC4/CVC4/blob/0a02fd2b69c0c0f454fc33d8028b24f4fcf431de/src/expr/attribute_internals.h#L508). If the ExprManager is (indirectly) owned by a `std::unique_ptr` in a static class, however, there are no such guarantees as the destruction order of static objects is not defined. This commit adds a flag for CxxTest to not use static initialization in the test runner, which solves the issue. Additionally, the commit fixes a warning about a missing virtual deconstructor in ParserBlack that came up after using the new flags. This fixes an issue reported in the nightly builds.
Diffstat (limited to 'src/util')
0 files changed, 0 insertions, 0 deletions
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback