From 0dad442511fc3e96bae721c38fe8040a222cc21a Mon Sep 17 00:00:00 2001 From: couriersud Date: Mon, 20 Jun 2022 20:01:03 +0200 Subject: netlist: fix bug, prepare for future changes and improve readability (#9947) * netlist: fix bug, prepare for future changes and improve readability - fix a bug where a net processing error may trigger a nullptr access - applied some clang-tidy recommendations - add no_return to plib::terminate - properly encapsulate dynamic_cast usage - more review of noexcept - added a clang-format file. Over time, all source files will be processed with clang-format - Used clang format on a number of files - Rewrote 74174 - all device constructors now use a struct to pass data on to base classes. Neither netlist state nor the name are intended to be used in a constructor. After the base class was constructed, they can be accessed by state() and name(). - The device construction macros can now be removed. Changes to the core will not need to be reflected in constructors. - Change truth table macros so that going forward NETLIST_END and TRUTH_TABLE_END can be replaced by a closing curly brace. netlists can than use curly braces enclosed blocks. - more clang-format - removed some macros completely - all derived classes from base_device_t now don't use macros any longer. - as a result, delegator_t was removed. This class was only used to support macros :-( --- src/lib/netlist/plib/pexception.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/lib/netlist/plib/pexception.cpp') diff --git a/src/lib/netlist/plib/pexception.cpp b/src/lib/netlist/plib/pexception.cpp index 260fa908bf0..168cb172473 100644 --- a/src/lib/netlist/plib/pexception.cpp +++ b/src/lib/netlist/plib/pexception.cpp @@ -20,7 +20,7 @@ namespace plib { // terminate //============================================================ - void terminate(const char *msg) noexcept + [[noreturn]] void terminate(const char *msg) noexcept { try { -- cgit v1.2.3-70-g09d2