https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112655
Bug ID: 112655 Summary: analyzer/infinite-loop.cc:75: Possible performance problem ? Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: analyzer Assignee: dmalcolm at gcc dot gnu.org Reporter: dcb314 at hotmail dot com Target Milestone: --- Static analyser cppcheck finds this problem: analyzer/infinite-loop.cc:75:38: performance: Function parameter 'eedges' should be passed by const reference. [passedByValue] Source code is struct infinite_loop { infinite_loop (const exploded_node &enode, location_t loc, std::vector<const exploded_edge *> eedges, logger *logger) Some other potential problems found by cppcheck for the analyzer: trunk.year/gcc/analyzer/sm-file.cc:282:3: performance: Variable 'm_unchecked' is assigned in constructor body. Consider performing initialization in initialization list. [useInitializationList] trunk.year/gcc/analyzer/sm-sensitive.cc:170:3: performance: Variable 'm_sensitive' is assigned in constructor body. Consider performing initialization in initialization list. [useInitializationList] trunk.year/gcc/analyzer/sm-signal.cc:190:3: performance: Variable 'm_in_signal_handler' is assigned in constructor body. Consider performing initialization in initialization list. [useInitializationList] trunk.year/gcc/analyzer/sm-taint.cc:869:3: performance: Variable 'm_tainted' is assigned in constructor body. Consider performing initialization in initialization list. [useInitializationList] trunk.year/gcc/analyzer/region-model.cc:6976:5: performance: Variable 'm_x_field' is assigned in constructor body. Consider performing initialization in initialization list. [useInitializationList] trunk.year/gcc/analyzer/varargs.cc:247:3: performance: Variable 'm_started' is assigned in constructor body. Consider performing initialization in initialization list. [useInitializationList]