From 9431ee68e78aa0fe5164bfa7466f35ebd02f560d Mon Sep 17 00:00:00 2001 From: couriersud Date: Sat, 25 Jan 2020 17:41:14 +0100 Subject: netlist: clang lint fixes, srcclean and nlwav fix. (nw) --- src/lib/netlist/build/makefile | 6 ++-- src/lib/netlist/devices/nld_4006.cpp | 8 +++--- src/lib/netlist/nl_base.h | 24 ++++++++-------- src/lib/netlist/nl_errstr.h | 6 ++-- src/lib/netlist/plib/parray.h | 12 ++++---- src/lib/netlist/plib/pfmtlog.h | 2 +- src/lib/netlist/plib/plists.h | 8 ++++-- src/lib/netlist/plib/pstring.h | 13 +++++---- src/lib/netlist/plib/putil.h | 8 ++---- src/lib/netlist/prg/nlwav.cpp | 2 -- src/lib/netlist/tools/nl_convert.cpp | 2 ++ src/mame/audio/nl_segas16b.cpp | 54 ++++++++++++++++++------------------ 12 files changed, 74 insertions(+), 71 deletions(-) diff --git a/src/lib/netlist/build/makefile b/src/lib/netlist/build/makefile index cc8b62ac287..2c19a7523bf 100644 --- a/src/lib/netlist/build/makefile +++ b/src/lib/netlist/build/makefile @@ -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 \ diff --git a/src/lib/netlist/devices/nld_4006.cpp b/src/lib/netlist/devices/nld_4006.cpp index 54757b0c8d6..7948e0b92e4 100644 --- a/src/lib/netlist/devices/nld_4006.cpp +++ b/src/lib/netlist/devices/nld_4006.cpp @@ -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((m_d[0] & 0x0f) | (m_I[0]() << 4)); + m_d[1] = static_cast((m_d[1] & 0x1f) | (m_I[1]() << 5)); + m_d[2] = static_cast((m_d[2] & 0x0f) | (m_I[2]() << 4)); + m_d[3] = static_cast((m_d[3] & 0x1f) | (m_I[3]() << 5)); } } diff --git a/src/lib/netlist/nl_base.h b/src/lib/netlist/nl_base.h index 2647ac679b2..1782dd8ae56 100644 --- a/src/lib/netlist/nl_base.h +++ b/src/lib/netlist/nl_base.h @@ -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,12 +1932,10 @@ 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; - } + + m_gt1 = gt; + m_go1 = go; + m_Idr1 = Idr; } inline logic_net_t & logic_t::net() noexcept diff --git a/src/lib/netlist/nl_errstr.h b/src/lib/netlist/nl_errstr.h index a6bf39374d7..f0cd3233856 100644 --- a/src/lib/netlist/nl_errstr.h +++ b/src/lib/netlist/nl_errstr.h @@ -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 diff --git a/src/lib/netlist/plib/parray.h b/src/lib/netlist/plib/parray.h index e2454f5691b..05f3b0ce3f4 100644 --- a/src/lib/netlist/plib/parray.h +++ b/src/lib/netlist/plib/parray.h @@ -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 + parray &operator=(const parray &rhs) noexcept // NOLINT(bugprone-unhandled-self-assignment, cert-oop54-cpp) { - if (this != &rhs) - { - m_a = rhs.m_a; - m_size = rhs.m_size; - } + if (this == &rhs) + return *this; + + m_a = rhs.m_a; + m_size = rhs.m_size; return *this; } diff --git a/src/lib/netlist/plib/pfmtlog.h b/src/lib/netlist/plib/pfmtlog.h index 86761096caf..f73e83c2ca2 100644 --- a/src/lib/netlist/plib/pfmtlog.h +++ b/src/lib/netlist/plib/pfmtlog.h @@ -412,7 +412,7 @@ namespace plib { struct perrmsg { template - 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)...)) { } operator pstring const & () const noexcept { return m_msg; } diff --git a/src/lib/netlist/plib/plists.h b/src/lib/netlist/plib/plists.h index efa0326f431..a5340193b3c 100644 --- a/src/lib/netlist/plib/plists.h +++ b/src/lib/netlist/plib/plists.h @@ -133,10 +133,12 @@ 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) - p = rhs.p; + if (this == &rhs) + return *this; + + p = rhs.p; return *this; } diff --git a/src/lib/netlist/plib/pstring.h b/src/lib/netlist/plib/pstring.h index 43cdf5f7e32..29f8fe2e6da 100644 --- a/src/lib/netlist/plib/pstring.h +++ b/src/lib/netlist/plib/pstring.h @@ -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,7 +338,9 @@ struct putf16_traits // FIXME: check that size is equal auto c = static_cast(*i++); if (!((c & 0xd800) == 0xd800)) + { ret++; + } } return ret; } @@ -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; } }; diff --git a/src/lib/netlist/plib/putil.h b/src/lib/netlist/plib/putil.h index a44ebcacf21..8b4df6aebd2 100644 --- a/src/lib/netlist/plib/putil.h +++ b/src/lib/netlist/plib/putil.h @@ -156,10 +156,8 @@ namespace plib typename TS::stream_ptr stream(const pstring &name) override { - if (name == m_name) - return plib::make_unique(m_str); - else - return typename TS::stream_ptr(nullptr); + return (name == m_name) ? + plib::make_unique(m_str) : typename TS::stream_ptr(nullptr); } private: pstring m_name; @@ -279,7 +277,7 @@ namespace plib std::vector psplit(const pstring &str, const std::vector &onstrl); std::vector psplit_r(const std::string &stri, const std::string &token, - const std::size_t maxsplit); + std::size_t maxsplit); //============================================================ // penum - strongly typed enumeration diff --git a/src/lib/netlist/prg/nlwav.cpp b/src/lib/netlist/prg/nlwav.cpp index fb59dbdc667..a301cc3efcb 100644 --- a/src/lib/netlist/prg/nlwav.cpp +++ b/src/lib/netlist/prg/nlwav.cpp @@ -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()); diff --git a/src/lib/netlist/tools/nl_convert.cpp b/src/lib/netlist/tools/nl_convert.cpp index 28cf290d97c..0cbbea5df10 100644 --- a/src/lib/netlist/tools/nl_convert.cpp +++ b/src/lib/netlist/tools/nl_convert.cpp @@ -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" diff --git a/src/mame/audio/nl_segas16b.cpp b/src/mame/audio/nl_segas16b.cpp index e4b82787441..21c2ae3bdfb 100644 --- a/src/mame/audio/nl_segas16b.cpp +++ b/src/mame/audio/nl_segas16b.cpp @@ -9,17 +9,17 @@ NETLIST_START(segas16b_audio) SOLVER(Solver, 48000) //PARAM(Solver.DYNAMIC_TS, 1) - + ANALOG_INPUT(VP5, 5) ANALOG_INPUT(VP12, 12) - /* UPD7759 has resistor of 47K on reference pin + /* UPD7759 has resistor of 47K on reference pin * ==> IREF ~30 uA * According to datasheet maximum current sink * is 34 * IREF. - * + * * MAME must provide range of 0 to 1020 uA to the current sink. - * + * */ #if 0 CLOCK(T0, 10) @@ -34,7 +34,7 @@ NETLIST_START(segas16b_audio) NET_C(GND, T2.2, T1.2) NET_C(T1.1, T2.1, T0R.2) #endif - + CS(SPEECH, 0) //PARAM(SPEECH.FUNC, "0.001020 * (0.5 + 0.5 * sin(6280 * T))") NET_C(SPEECH.2, GND) @@ -48,57 +48,57 @@ NETLIST_START(segas16b_audio) NET_C(CH1VS.2, GND) ALIAS(CH2, CH1VS.1) #endif - + /* The YM3012 uses only one dac for the two channels. * Sample-and-hold is used to two toggle between the two channels. * This is not emulated here since the YM2151 signals are provided - * externally. - * + * externally. + * * Therefore two RCOM resistors are used for now directly connected * to the channels. - * + * * The YM3012 datasheet gives a formula for digital to VOUT: * VOUT = 0.5 VDD + 0.25 * VDD *(-1 + D9 + d8/2 .. + d0/512 + 1/1024)/pow(2,N) * N= S2Q*4+S1Q*2+S0Q * 3 bits ignored (I0,I1,I2) * Serial data stream: I0,I1,I2,D0,..., D9,S0,S1,S2 - * - * Basically output is between 0.25 * VDD and 0.75 * VDD. + * + * Basically output is between 0.25 * VDD and 0.75 * VDD. * This needs to be done in MAME interface */ - + TL084_DIP(D20) LM324_DIP(XC20) RES(RCOM1, 390) RES(RCOM2, 390) - + CAP(C21, CAP_U(2.2)) CAP(C22, CAP_U(2.2)) // Needs verification CAP(C27, CAP_P(1500)) CAP(C28, CAP_P(1500)) - + // ------------------------------------ // YM2151/YM3012 inputs // ------------------------------------ - + NET_C(CH1, RCOM1.1) NET_C(RCOM1.2, C27.1, D20.5) NET_C(D20.7, D20.6, C22.1) - + NET_C(CH2, RCOM2.1) NET_C(RCOM2.2, C28.1, D20.10) NET_C(D20.8, D20.9, C21.1) - + NET_C(GND, C27.2, C28.2) - + // OPAMPS, no information on schematics, assume 12V since // TL084 with 5V would be outside specifications // No negative voltages found on schematics - + NET_C(VP12, XC20.4, D20.4) NET_C(GND, XC20.11, D20.11) - + // ------------------------------------ // Speech inputs // ------------------------------------ @@ -120,11 +120,11 @@ NETLIST_START(segas16b_audio) NET_C(R14.2, R16.1, C26.1, R15.1) NET_C(R15.2, C25.1, XC20.5) NET_C(XC20.7, XC20.6, C26.2, R12.1) - + NET_C(R12.2, C23.1, R13.1) NET_C(R13.2, C29.1, XC20.3) NET_C(XC20.1, XC20.2, C23.2, C62.1) - + NET_C(GND, R16.2, C25.2, C29.2) // ------------------------------------ @@ -144,22 +144,22 @@ NETLIST_START(segas16b_audio) CAP(C20, CAP_P(1000)) CAP(C19, CAP_U(47)) // FIXME: Needs verification RES(AMP_IN, RES_K(100)) - + NET_C(C62.2, R6.1) NET_C(C22.2, R9.1) NET_C(C21.2, R10.1) NET_C(R6.2, R9.2, R10.2, XC20.9, C20.1, R7.1) // FIXME: Schematics read "9" (XC20.9) - other AMP? NET_C(R7.2, C20.2, C63.1, XC20.8) // FIXME: Schematics read "7" (XC20.7) - other AMP? - + NET_C(VP5, R4.1) NET_C(R4.2, C19.1, R5.1, XC20.10) // FIXME: Schematics read "8" (XC20.8) - other AMP? - + NET_C(C63.2, R3.1) NET_C(R3.2, VR1.1, C12.1) NET_C(C12.2, AMP_IN.1) - + NET_C(GND, VR1.2, C19.2, R5.2, AMP_IN.2) - + // OUTPUT ALIAS(OUT, AMP_IN.1) -- cgit v1.2.3