diff --git a/kernel/yosys.cc b/kernel/yosys.cc index d5467afe..b280d334 100644 --- a/kernel/yosys.cc +++ b/kernel/yosys.cc @@ -720,9 +720,9 @@ void run_frontend(std::string filename, std::string command, RTLIL::Design *desi Pass::call(design, command); } } - catch (log_cmd_error_exception) { + catch (...) { Frontend::current_script_file = backup_script_file; - throw log_cmd_error_exception(); + throw; } Frontend::current_script_file = backup_script_file; diff --git a/passes/cmds/tee.cc b/passes/cmds/tee.cc index e83c9387..a0484090 100644 --- a/passes/cmds/tee.cc +++ b/passes/cmds/tee.cc @@ -76,11 +76,11 @@ struct TeePass : public Pass { try { std::vector new_args(args.begin() + argidx, args.end()); Pass::call(design, new_args); - } catch (log_cmd_error_exception) { + } catch (...) { for (auto cf : files_to_close) fclose(cf); log_files = backup_log_files; - throw log_cmd_error_exception(); + throw; } for (auto cf : files_to_close) diff --git a/passes/cmds/trace.cc b/passes/cmds/trace.cc index e05fedb3..1a5f873f 100644 --- a/passes/cmds/trace.cc +++ b/passes/cmds/trace.cc @@ -85,9 +85,9 @@ struct TracePass : public Pass { try { std::vector new_args(args.begin() + argidx, args.end()); Pass::call(design, new_args); - } catch (log_cmd_error_exception) { + } catch (...) { design->monitors.erase(&monitor); - throw log_cmd_error_exception(); + throw; } design->monitors.erase(&monitor);