mirror of
https://github.com/Z3Prover/z3
synced 2025-06-20 04:43:39 +00:00
more detailed tracing of where unmaterialized exceptions happen
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
7de0c29f12
commit
012fc1b72b
4 changed files with 14 additions and 15 deletions
|
@ -18,11 +18,11 @@ Notes:
|
|||
--*/
|
||||
#include "solver/check_sat_result.h"
|
||||
|
||||
void check_sat_result::set_reason_unknown(event_handler& eh) {
|
||||
void check_sat_result::set_reason_unknown(event_handler& eh, char const* what) {
|
||||
switch (eh.caller_id()) {
|
||||
case UNSET_EH_CALLER:
|
||||
if (reason_unknown() == "")
|
||||
set_reason_unknown("unclassified exception");
|
||||
set_reason_unknown(what);
|
||||
break;
|
||||
case CTRL_C_EH_CALLER:
|
||||
set_reason_unknown("interrupted from keyboard");
|
||||
|
@ -46,7 +46,7 @@ void check_sat_result::set_reason_unknown(event_handler& eh, std::exception& ex)
|
|||
set_reason_unknown(ex.what());
|
||||
break;
|
||||
default:
|
||||
set_reason_unknown(eh);
|
||||
set_reason_unknown(eh, ex.what());
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -68,7 +68,7 @@ public:
|
|||
virtual proof * get_proof_core() = 0;
|
||||
virtual std::string reason_unknown() const = 0;
|
||||
virtual void set_reason_unknown(char const* msg) = 0;
|
||||
void set_reason_unknown(event_handler& eh);
|
||||
void set_reason_unknown(event_handler& eh, char const* msg);
|
||||
void set_reason_unknown(event_handler& eh, std::exception& ex);
|
||||
virtual void get_labels(svector<symbol> & r) = 0;
|
||||
virtual ast_manager& get_manager() const = 0;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue