From 01dee390a98dd3f086d84dafe89a8350de924b7c Mon Sep 17 00:00:00 2001 From: "G.E" Date: Tue, 23 Apr 2024 19:08:24 +0300 Subject: [PATCH] ddressing some cppcheck warnings. yes this will be cleaned up in a following commit. tests pass. --- benchmarks/benchmarks.cpp | 2 +- src/nfagraph/ng.cpp | 3 --- src/nfagraph/ng_limex_accel.cpp | 4 ++-- src/nfagraph/ng_som_util.cpp | 23 ++++++++++++----------- src/rose/rose_build_bytecode.cpp | 6 ++++-- src/rose/rose_build_castle.cpp | 2 +- tools/hscheck/main.cpp | 2 +- util/ExpressionParser.rl | 2 +- util/ng_corpus_generator.h | 2 +- 9 files changed, 23 insertions(+), 23 deletions(-) diff --git a/benchmarks/benchmarks.cpp b/benchmarks/benchmarks.cpp index 91cab3f8..d8b77992 100644 --- a/benchmarks/benchmarks.cpp +++ b/benchmarks/benchmarks.cpp @@ -113,7 +113,7 @@ static void run_benchmarks(int size, int loops, int max_matches, bool is_reverse auto end = std::chrono::steady_clock::now(); total_sec += std::chrono::duration_cast(end - start).count(); /*calculate transferred size*/ - total_size = size * loops; + total_size = (u64a)size * (u64a)loops; /*calculate average time*/ avg_time = total_sec / loops; /*convert microseconds to seconds*/ diff --git a/src/nfagraph/ng.cpp b/src/nfagraph/ng.cpp index b2a87523..7189baad 100644 --- a/src/nfagraph/ng.cpp +++ b/src/nfagraph/ng.cpp @@ -193,9 +193,6 @@ void reduceGraph(NGHolder &g, som_type som, bool utf8, if (!som) { mergeCyclicDotStars(g); - } - - if (!som) { removeSiblingsOfStartDotStar(g); } } diff --git a/src/nfagraph/ng_limex_accel.cpp b/src/nfagraph/ng_limex_accel.cpp index 8bac753d..58149ad3 100644 --- a/src/nfagraph/ng_limex_accel.cpp +++ b/src/nfagraph/ng_limex_accel.cpp @@ -811,11 +811,11 @@ depth_done: return true; } } - } + // } // Second option: a two-byte shufti (i.e. less than eight 2-byte // literals) - if (depth > 1) { + // if (depth > 1) { for (unsigned int i = 0; i < (depth - 1); i++) { if (depthReach[i].count() * depthReach[i+1].count() <= DOUBLE_SHUFTI_LIMIT) { diff --git a/src/nfagraph/ng_som_util.cpp b/src/nfagraph/ng_som_util.cpp index 82277c06..01beec8d 100644 --- a/src/nfagraph/ng_som_util.cpp +++ b/src/nfagraph/ng_som_util.cpp @@ -267,17 +267,18 @@ bool somMayGoBackwards(NFAVertex u, const NGHolder &g, boost::depth_first_search(c_g, visitor(backEdgeVisitor) .root_vertex(c_g.start)); - for (const auto &e : be) { - NFAVertex s = source(e, c_g); - NFAVertex t = target(e, c_g); - DEBUG_PRINTF("back edge %zu %zu\n", c_g[s].index, c_g[t].index); - if (s != t) { - assert(0); - DEBUG_PRINTF("eek big cycle\n"); - rv = true; /* big cycle -> eek */ - goto exit; - } - } + // with be.clear right above does this ever run at all? + //for (const auto &e : be) { + // NFAVertex s = source(e, c_g); + // NFAVertex t = target(e, c_g); + // DEBUG_PRINTF("back edge %zu %zu\n", c_g[s].index, c_g[t].index); + // if (s != t) { + // assert(0); + // DEBUG_PRINTF("eek big cycle\n"); + // rv = true; /* big cycle -> eek */ + // goto exit; + // } + //} DEBUG_PRINTF("checking acyclic+selfloop graph\n"); diff --git a/src/rose/rose_build_bytecode.cpp b/src/rose/rose_build_bytecode.cpp index 06f36582..2df3b3a3 100644 --- a/src/rose/rose_build_bytecode.cpp +++ b/src/rose/rose_build_bytecode.cpp @@ -2975,7 +2975,8 @@ void buildFragmentPrograms(const RoseBuildImpl &build, !lit_prog.empty()) { auto &cfrag = fragments[pfrag.included_frag_id]; assert(pfrag.s.length() >= cfrag.s.length() && - !pfrag.s.any_nocase() >= !cfrag.s.any_nocase()); + !pfrag.s.any_nocase() == !cfrag.s.any_nocase()); + /** !pfrag.s.any_nocase() >= !cfrag.s.any_nocase()); **/ u32 child_offset = cfrag.lit_program_offset; DEBUG_PRINTF("child %u offset %u\n", cfrag.fragment_id, child_offset); @@ -2993,7 +2994,8 @@ void buildFragmentPrograms(const RoseBuildImpl &build, if (pfrag.included_delay_frag_id != INVALID_FRAG_ID && !rebuild_prog.empty()) { auto &cfrag = fragments[pfrag.included_delay_frag_id]; - assert(pfrag.s.length() >= cfrag.s.length() && + /** assert(pfrag.s.length() >= cfrag.s.length() && **/ + assert(pfrag.s.length() == cfrag.s.length() && !pfrag.s.any_nocase() >= !cfrag.s.any_nocase()); u32 child_offset = cfrag.delay_program_offset; DEBUG_PRINTF("child %u offset %u\n", cfrag.fragment_id, diff --git a/src/rose/rose_build_castle.cpp b/src/rose/rose_build_castle.cpp index f3357982..2a1dcdd9 100644 --- a/src/rose/rose_build_castle.cpp +++ b/src/rose/rose_build_castle.cpp @@ -170,7 +170,7 @@ void renovateCastle(RoseBuildImpl &tbi, CastleProto *castle, return; /* bail - TODO: be less lazy */ } - vector rem_local_cr; + //vector rem_local_cr; u32 ok_count = 0; for (auto it = e.s.end() - g[v].left.lag; it != e.s.end(); ++it) { if (!isSubsetOf(*it, cr)) { diff --git a/tools/hscheck/main.cpp b/tools/hscheck/main.cpp index f3e9419a..2c73baf5 100644 --- a/tools/hscheck/main.cpp +++ b/tools/hscheck/main.cpp @@ -97,7 +97,7 @@ unsigned int countFailures = 0; class ParsedExpr { public: - ParsedExpr(string regex_in, unsigned int flags_in, hs_expr_ext ext_in) + ParsedExpr(string regex_in, unsigned int flags_in, hs_expr_ext& ext_in) : regex(regex_in), flags(flags_in), ext(ext_in) {} ~ParsedExpr() {} string regex; diff --git a/util/ExpressionParser.rl b/util/ExpressionParser.rl index b93f069d..ad201fec 100644 --- a/util/ExpressionParser.rl +++ b/util/ExpressionParser.rl @@ -152,7 +152,7 @@ bool HS_CDECL readExpression(const std::string &input, std::string &expr, UNUSED const char *eof = pe; UNUSED const char *ts = p, *te = p; int cs; - UNUSED int act; + //UNUSED int act; assert(p); assert(pe); diff --git a/util/ng_corpus_generator.h b/util/ng_corpus_generator.h index f230a10d..cd84a9ab 100644 --- a/util/ng_corpus_generator.h +++ b/util/ng_corpus_generator.h @@ -47,7 +47,7 @@ class NGHolder; } // namespace ue2 struct CorpusGenerationFailure { - explicit CorpusGenerationFailure(const std::string s) : + explicit CorpusGenerationFailure(const std::string& s) : message(std::move(s)) {} std::string message; };