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
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 += -cppcoreguidelines-pro-bounds-pointer-arithmetic,-cppcoreguidelines-owning-memory,
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-too-small-loop-variable,
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 +=
@ -106,6 +107,7 @@ NLOBJS := \
$(NLOBJ)/devices/nld_2102A.o \
$(NLOBJ)/devices/nld_2716.o \
$(NLOBJ)/devices/nld_tms4800.o \
$(NLOBJ)/devices/nld_4006.o \
$(NLOBJ)/devices/nld_4020.o \
$(NLOBJ)/devices/nld_4066.o \
$(NLOBJ)/devices/nld_4316.o \

View File

@ -54,10 +54,10 @@ namespace netlist
}
else
{
m_d[0] = (m_d[0] & 0x0f) | (m_I[0]() << 4);
m_d[1] = (m_d[1] & 0x1f) | (m_I[1]() << 5);
m_d[2] = (m_d[2] & 0x0f) | (m_I[2]() << 4);
m_d[3] = (m_d[3] & 0x1f) | (m_I[3]() << 5);
m_d[0] = static_cast<uint8_t>((m_d[0] & 0x0f) | (m_I[0]() << 4));
m_d[1] = static_cast<uint8_t>((m_d[1] & 0x1f) | (m_I[1]() << 5));
m_d[2] = static_cast<uint8_t>((m_d[2] & 0x0f) | (m_I[2]() << 4));
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.
#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.
///
@ -590,7 +590,7 @@ namespace netlist
};
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;
COPYASSIGNMOVE(core_terminal_t, delete)
@ -632,7 +632,7 @@ namespace netlist
state_var_sig m_Q;
#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
void set_delegate(const nldelegate &delegate) noexcept { m_delegate = delegate; }
@ -788,7 +788,7 @@ namespace netlist
{
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());
const analog_net_t & net() const noexcept;
@ -849,7 +849,7 @@ namespace netlist
{
public:
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;
const logic_net_t & net() const noexcept;
@ -1148,7 +1148,7 @@ namespace netlist
class param_num_t final: public param_t
{
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; }
operator T() const noexcept { return m_param; }
@ -1162,7 +1162,7 @@ namespace netlist
class param_enum_t final: public param_t
{
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); }
operator T() const noexcept { return T(m_param); }
@ -1932,13 +1932,11 @@ namespace netlist
state().log().fatal("Inconsistent nullptrs for terminal {}", name());
throw nl_exception("Inconsistent nullptrs for terminal {}", name());
}
else
{
m_gt1 = gt;
m_go1 = go;
m_Idr1 = Idr;
}
}
inline logic_net_t & logic_t::net() noexcept
{

View File

@ -13,9 +13,9 @@
namespace netlist
{
static constexpr const char sHINT_NO_DEACTIVATE[] = ".HINT_NO_DEACTIVATE";
static constexpr const char sPowerGND[] = "GND";
static constexpr const char sPowerVCC[] = "VCC";
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"; // NOLINT(cppcoreguidelines-avoid-c-arrays, modernize-avoid-c-arrays)
static constexpr const char sPowerVCC[] = "VCC"; // NOLINT(cppcoreguidelines-avoid-c-arrays, modernize-avoid-c-arrays)
// 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(parray &&rhs) noexcept : m_a(std::move(rhs.m_a)), m_size(std::move(rhs.m_size)) {}
parray &operator=(const parray &rhs) noexcept
{
if (this != &rhs)
parray &operator=(const parray &rhs) noexcept // NOLINT(bugprone-unhandled-self-assignment, cert-oop54-cpp)
{
if (this == &rhs)
return *this;
m_a = rhs.m_a;
m_size = rhs.m_size;
}
return *this;
}

View File

@ -412,7 +412,7 @@ namespace plib {
struct perrmsg
{
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)...))
{ }
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) { }
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;
return *this;
}

View File

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

View File

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

View File

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

View File

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