netlist: clang lint fixes, srcclean and nlwav fix. (nw)

This commit is contained in:
couriersud 2020-01-25 17:41:14 +01:00
parent 334e367d4d
commit 9431ee68e7
12 changed files with 74 additions and 71 deletions

View File

@ -14,7 +14,7 @@ VSBUILD = $(SRC)/buildVS
DOC = $(SRC)/documentation DOC = $(SRC)/documentation
TIDY_DB = ../compile_commands.json TIDY_DB = ../compile_commands.json
TIDY_FLAGSX = -checks=*,-google*,-hicpp*,-readability*,-fuchsia*,cert-*,-android-*, TIDY_FLAGSX = -checks=*,-google*,-hicpp*,readability*,-fuchsia*,cert-*,-android-*,
TIDY_FLAGSX += -llvm-header-guard,-cppcoreguidelines-pro-type-reinterpret-cast, TIDY_FLAGSX += -llvm-header-guard,-cppcoreguidelines-pro-type-reinterpret-cast,
TIDY_FLAGSX += -cppcoreguidelines-pro-bounds-pointer-arithmetic,-cppcoreguidelines-owning-memory, TIDY_FLAGSX += -cppcoreguidelines-pro-bounds-pointer-arithmetic,-cppcoreguidelines-owning-memory,
TIDY_FLAGSX += -modernize-use-default-member-init,-cppcoreguidelines-pro-bounds-constant-array-index, TIDY_FLAGSX += -modernize-use-default-member-init,-cppcoreguidelines-pro-bounds-constant-array-index,
@ -25,7 +25,8 @@ TIDY_FLAGSX += -cppcoreguidelines-non-private-member-variables-in-classes,-misc-
TIDY_FLAGSX += -bugprone-macro-parentheses,-misc-macro-parentheses, TIDY_FLAGSX += -bugprone-macro-parentheses,-misc-macro-parentheses,
TIDY_FLAGSX += -bugprone-too-small-loop-variable, TIDY_FLAGSX += -bugprone-too-small-loop-variable,
TIDY_FLAGSX += -modernize-use-trailing-return-type, TIDY_FLAGSX += -modernize-use-trailing-return-type,
TIDY_FLAGSX += -cppcoreguidelines-pro-bounds-array-to-pointer-decay TIDY_FLAGSX += -cppcoreguidelines-pro-bounds-array-to-pointer-decay,
TIDY_FLAGSX += -readability-magic-numbers,-readability-implicit-bool-conversion,readability-braces-around-statements
space := space :=
space += space +=
@ -106,6 +107,7 @@ NLOBJS := \
$(NLOBJ)/devices/nld_2102A.o \ $(NLOBJ)/devices/nld_2102A.o \
$(NLOBJ)/devices/nld_2716.o \ $(NLOBJ)/devices/nld_2716.o \
$(NLOBJ)/devices/nld_tms4800.o \ $(NLOBJ)/devices/nld_tms4800.o \
$(NLOBJ)/devices/nld_4006.o \
$(NLOBJ)/devices/nld_4020.o \ $(NLOBJ)/devices/nld_4020.o \
$(NLOBJ)/devices/nld_4066.o \ $(NLOBJ)/devices/nld_4066.o \
$(NLOBJ)/devices/nld_4316.o \ $(NLOBJ)/devices/nld_4316.o \

View File

@ -54,10 +54,10 @@ namespace netlist
} }
else else
{ {
m_d[0] = (m_d[0] & 0x0f) | (m_I[0]() << 4); m_d[0] = static_cast<uint8_t>((m_d[0] & 0x0f) | (m_I[0]() << 4));
m_d[1] = (m_d[1] & 0x1f) | (m_I[1]() << 5); m_d[1] = static_cast<uint8_t>((m_d[1] & 0x1f) | (m_I[1]() << 5));
m_d[2] = (m_d[2] & 0x0f) | (m_I[2]() << 4); m_d[2] = static_cast<uint8_t>((m_d[2] & 0x0f) | (m_I[2]() << 4));
m_d[3] = (m_d[3] & 0x1f) | (m_I[3]() << 5); m_d[3] = static_cast<uint8_t>((m_d[3] & 0x1f) | (m_I[3]() << 5));
} }
} }

View File

@ -135,7 +135,7 @@ class NETLIB_NAME(name) : public device_t
/// Please see \ref NETLIB_IS_TIMESTEP for an example. /// Please see \ref NETLIB_IS_TIMESTEP for an example.
#define NETLIB_TIMESTEPI() \ #define NETLIB_TIMESTEPI() \
public: virtual void timestep(const nl_fptype step) noexcept override public: virtual void timestep(nl_fptype step) noexcept override
/// \brief Used to implement the body of the time stepping code. /// \brief Used to implement the body of the time stepping code.
/// ///
@ -590,7 +590,7 @@ namespace netlist
}; };
core_terminal_t(core_device_t &dev, const pstring &aname, core_terminal_t(core_device_t &dev, const pstring &aname,
const state_e state, nldelegate delegate = nldelegate()); state_e state, nldelegate delegate = nldelegate());
virtual ~core_terminal_t() noexcept = default; virtual ~core_terminal_t() noexcept = default;
COPYASSIGNMOVE(core_terminal_t, delete) COPYASSIGNMOVE(core_terminal_t, delete)
@ -632,7 +632,7 @@ namespace netlist
state_var_sig m_Q; state_var_sig m_Q;
#else #else
void set_copied_input(netlist_sig_t val) const noexcept { plib::unused_var(val); } static void set_copied_input(netlist_sig_t val) noexcept { plib::unused_var(val); }
#endif #endif
void set_delegate(const nldelegate &delegate) noexcept { m_delegate = delegate; } void set_delegate(const nldelegate &delegate) noexcept { m_delegate = delegate; }
@ -788,7 +788,7 @@ namespace netlist
{ {
public: public:
analog_t(core_device_t &dev, const pstring &aname, const state_e state, analog_t(core_device_t &dev, const pstring &aname, state_e state,
nldelegate delegate = nldelegate()); nldelegate delegate = nldelegate());
const analog_net_t & net() const noexcept; const analog_net_t & net() const noexcept;
@ -849,7 +849,7 @@ namespace netlist
{ {
public: public:
logic_t(core_device_t &dev, const pstring &aname, logic_t(core_device_t &dev, const pstring &aname,
const state_e state, nldelegate delegate = nldelegate()); state_e state, nldelegate delegate = nldelegate());
logic_net_t & net() noexcept; logic_net_t & net() noexcept;
const logic_net_t & net() const noexcept; const logic_net_t & net() const noexcept;
@ -1148,7 +1148,7 @@ namespace netlist
class param_num_t final: public param_t class param_num_t final: public param_t
{ {
public: public:
param_num_t(device_t &device, const pstring &name, const T val) noexcept(false); param_num_t(device_t &device, const pstring &name, T val) noexcept(false);
T operator()() const noexcept { return m_param; } T operator()() const noexcept { return m_param; }
operator T() const noexcept { return m_param; } operator T() const noexcept { return m_param; }
@ -1162,7 +1162,7 @@ namespace netlist
class param_enum_t final: public param_t class param_enum_t final: public param_t
{ {
public: public:
param_enum_t(device_t &device, const pstring &name, const T val) noexcept(false); param_enum_t(device_t &device, const pstring &name, T val) noexcept(false);
T operator()() const noexcept { return T(m_param); } T operator()() const noexcept { return T(m_param); }
operator T() const noexcept { return T(m_param); } operator T() const noexcept { return T(m_param); }
@ -1932,13 +1932,11 @@ namespace netlist
state().log().fatal("Inconsistent nullptrs for terminal {}", name()); state().log().fatal("Inconsistent nullptrs for terminal {}", name());
throw nl_exception("Inconsistent nullptrs for terminal {}", name()); throw nl_exception("Inconsistent nullptrs for terminal {}", name());
} }
else
{
m_gt1 = gt; m_gt1 = gt;
m_go1 = go; m_go1 = go;
m_Idr1 = Idr; m_Idr1 = Idr;
} }
}
inline logic_net_t & logic_t::net() noexcept inline logic_net_t & logic_t::net() noexcept
{ {

View File

@ -13,9 +13,9 @@
namespace netlist namespace netlist
{ {
static constexpr const char sHINT_NO_DEACTIVATE[] = ".HINT_NO_DEACTIVATE"; static constexpr const char sHINT_NO_DEACTIVATE[] = ".HINT_NO_DEACTIVATE"; // NOLINT(cppcoreguidelines-avoid-c-arrays, modernize-avoid-c-arrays)
static constexpr const char sPowerGND[] = "GND"; static constexpr const char sPowerGND[] = "GND"; // NOLINT(cppcoreguidelines-avoid-c-arrays, modernize-avoid-c-arrays)
static constexpr const char sPowerVCC[] = "VCC"; static constexpr const char sPowerVCC[] = "VCC"; // NOLINT(cppcoreguidelines-avoid-c-arrays, modernize-avoid-c-arrays)
// nl_base.cpp // nl_base.cpp

View File

@ -107,13 +107,13 @@ namespace plib {
parray(const parray &rhs) : m_a(rhs.m_a), m_size(rhs.m_size) {} parray(const parray &rhs) : m_a(rhs.m_a), m_size(rhs.m_size) {}
parray(parray &&rhs) noexcept : m_a(std::move(rhs.m_a)), m_size(std::move(rhs.m_size)) {} parray(parray &&rhs) noexcept : m_a(std::move(rhs.m_a)), m_size(std::move(rhs.m_size)) {}
parray &operator=(const parray &rhs) noexcept parray &operator=(const parray &rhs) noexcept // NOLINT(bugprone-unhandled-self-assignment, cert-oop54-cpp)
{
if (this != &rhs)
{ {
if (this == &rhs)
return *this;
m_a = rhs.m_a; m_a = rhs.m_a;
m_size = rhs.m_size; m_size = rhs.m_size;
}
return *this; return *this;
} }

View File

@ -412,7 +412,7 @@ namespace plib {
struct perrmsg struct perrmsg
{ {
template<std::size_t N, typename... Args> template<std::size_t N, typename... Args>
explicit perrmsg(const char (&fmt)[N], Args&&... args) explicit perrmsg(const char (&fmt)[N], Args&&... args) // NOLINT(cppcoreguidelines-avoid-c-arrays, modernize-avoid-c-arrays)
: m_msg(plib::pfmt(fmt)(std::forward<Args>(args)...)) : m_msg(plib::pfmt(fmt)(std::forward<Args>(args)...))
{ } { }
operator pstring const & () const noexcept { return m_msg; } operator pstring const & () const noexcept { return m_msg; }

View File

@ -133,9 +133,11 @@ namespace plib {
constexpr iter_t(iter_t &rhs) noexcept : p(rhs.p) { } constexpr iter_t(iter_t &rhs) noexcept : p(rhs.p) { }
iter_t(iter_t &&rhs) noexcept { std::swap(*this, rhs); } iter_t(iter_t &&rhs) noexcept { std::swap(*this, rhs); }
iter_t& operator=(const iter_t &rhs) noexcept iter_t& operator=(const iter_t &rhs) noexcept // NOLINT(bugprone-unhandled-self-assignment, cert-oop54-cpp)
{ {
if (this != &rhs) if (this == &rhs)
return *this;
p = rhs.p; p = rhs.p;
return *this; return *this;
} }

View File

@ -174,7 +174,7 @@ public:
size_type length() const noexcept { return traits_type::len(m_str); } size_type length() const noexcept { return traits_type::len(m_str); }
size_type size() const noexcept { return traits_type::len(m_str); } size_type size() const noexcept { return traits_type::len(m_str); }
bool empty() const noexcept { return m_str.size() == 0; } bool empty() const noexcept { return m_str.empty(); }
pstring_t substr(size_type start, size_type nlen = npos) const; pstring_t substr(size_type start, size_type nlen = npos) const;
int compare(const pstring_t &right) const noexcept; int compare(const pstring_t &right) const noexcept;
@ -317,7 +317,9 @@ struct putf8_traits
const mem_t *p1 = p; const mem_t *p1 = p;
std::size_t i = n; std::size_t i = n;
while (i-- > 0) while (i-- > 0)
{
p1 += codelen(p1); p1 += codelen(p1);
}
return p1; return p1;
} }
}; };
@ -336,8 +338,10 @@ struct putf16_traits
// FIXME: check that size is equal // FIXME: check that size is equal
auto c = static_cast<uint16_t>(*i++); auto c = static_cast<uint16_t>(*i++);
if (!((c & 0xd800) == 0xd800)) if (!((c & 0xd800) == 0xd800))
{
ret++; ret++;
} }
}
return ret; return ret;
} }
static std::size_t codelen(const mem_t *p) noexcept static std::size_t codelen(const mem_t *p) noexcept
@ -347,10 +351,7 @@ struct putf16_traits
} }
static std::size_t codelen(const code_t c) noexcept static std::size_t codelen(const code_t c) noexcept
{ {
if (c < 0x10000) return (c < 0x10000) ? 1 : 2; // U+10000 U+1FFFFF
return 1;
else // U+10000 U+1FFFFF
return 2;
} }
static code_t code(const mem_t *p) noexcept static code_t code(const mem_t *p) noexcept
{ {
@ -381,7 +382,9 @@ struct putf16_traits
{ {
std::size_t i = n; std::size_t i = n;
while (i-- > 0) while (i-- > 0)
{
p += codelen(p); p += codelen(p);
}
return p; return p;
} }
}; };

View File

@ -156,10 +156,8 @@ namespace plib
typename TS::stream_ptr stream(const pstring &name) override typename TS::stream_ptr stream(const pstring &name) override
{ {
if (name == m_name) return (name == m_name) ?
return plib::make_unique<std::stringstream>(m_str); plib::make_unique<std::stringstream>(m_str) : typename TS::stream_ptr(nullptr);
else
return typename TS::stream_ptr(nullptr);
} }
private: private:
pstring m_name; pstring m_name;
@ -279,7 +277,7 @@ namespace plib
std::vector<pstring> psplit(const pstring &str, const std::vector<pstring> &onstrl); std::vector<pstring> psplit(const pstring &str, const std::vector<pstring> &onstrl);
std::vector<std::string> psplit_r(const std::string &stri, std::vector<std::string> psplit_r(const std::string &stri,
const std::string &token, const std::string &token,
const std::size_t maxsplit); std::size_t maxsplit);
//============================================================ //============================================================
// penum - strongly typed enumeration // penum - strongly typed enumeration

View File

@ -494,8 +494,6 @@ void nlwav_app::convert(std::ostream &ostrm)
int nlwav_app::execute() int nlwav_app::execute()
{ {
for (auto &i : opt_args())
pout("Hello : " + i + "\n");
if (opt_help()) if (opt_help())
{ {
pout(usage()); pout(usage());

View File

@ -15,6 +15,8 @@
// define a model param on core device // define a model param on core device
// Format: external name,netlist device,model // Format: external name,netlist device,model
// NOLINTNEXTLINE(cppcoreguidelines-avoid-c-arrays,modernize-avoid-c-arrays)
static constexpr const char s_lib_map[] = static constexpr const char s_lib_map[] =
"SN74LS00D, TTL_7400_DIP, 74LSXX\n" "SN74LS00D, TTL_7400_DIP, 74LSXX\n"
"SN74LS04D, TTL_7404_DIP, 74LSXX\n" "SN74LS04D, TTL_7404_DIP, 74LSXX\n"