2024-04-26 02:38 ftp://ftp.de.debian.org/debian/pool/main/libk/libkainjow-mustache/libkainjow-mustache_4.1+ds.orig.tar.xz cppcheck-options: --library=posix --library=gnu --library=bsd --inconclusive --enable=style,information --inline-suppr --template=daca2 --disable=missingInclude --suppress=unmatchedSuppression --check-library --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning --suppress=normalCheckLevelConditionExpressions -D__GNUC__ --platform=unix64 -j1 platform: Linux-5.15.0-102-generic-x86_64-with-glibc2.35 python: 3.10.12 client-version: 1.3.57 compiler: g++ (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0 cppcheck: head 2.14.0 head-info: e5659cc (2024-04-25 21:50:47 +0200) count: 71 71 elapsed-time: 0.7 0.7 head-timing-info: old-timing-info: head results: Mustache-4.1/mustache.hpp:585:5: debug: Failed to parse 'using string_size_type = kainjow :: mustache :: basic_mustache < std :: string > std :: string :: size_type ;'. The checking continues anyway. [simplifyUsing] Mustache-4.1/tests.cpp:335:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] Mustache-4.1/tests.cpp:1161:54: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable cout [valueFlowBailoutIncompleteVar] Mustache-4.1/tests.cpp:1228:47: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable text [valueFlowBailoutIncompleteVar] Mustache-4.1/tests.cpp:1188:100: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable second [valueFlowBailoutIncompleteVar] Mustache-4.1/mustache.hpp:934:17: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable string_type [valueFlowBailoutIncompleteVar] Mustache-4.1/mustache.hpp:998:58: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable walk [valueFlowBailoutIncompleteVar] Mustache-4.1/mustache.hpp:604:38: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable text [valueFlowBailoutIncompleteVar] Mustache-4.1/mustache.hpp:459:44: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable npos [valueFlowBailoutIncompleteVar] Mustache-4.1/mustache.hpp:732:50: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable npos [valueFlowBailoutIncompleteVar] Mustache-4.1/mustache.hpp:820:38: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable npos [valueFlowBailoutIncompleteVar] Mustache-4.1/mustache.hpp:837:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable unescaped_variable [valueFlowBailoutIncompleteVar] Mustache-4.1/mustache.hpp:558:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable section_begin [valueFlowBailoutIncompleteVar] Mustache-4.1/mustache.hpp:561:34: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable section_end [valueFlowBailoutIncompleteVar] Mustache-4.1/tests.cpp:1192:10: performance:inconclusive: Technically the member function 'file_partial_context < kainjow :: mustache :: basic_mustache < std :: string > :: string_type >::read_file' can be static (but you may consider moving to unnamed namespace). [functionStatic] Mustache-4.1/mustache.hpp:970:10: performance:inconclusive: Technically the member function 'basic_mustache < std :: string >::render_current_line' can be static (but you may consider moving to unnamed namespace). [functionStatic] Mustache-4.1/mustache.hpp:987:10: performance:inconclusive: Technically the member function 'basic_mustache < std :: string >::render_result' can be static (but you may consider moving to unnamed namespace). [functionStatic] Mustache-4.1/mustache.hpp:970:10: performance:inconclusive: Technically the member function 'basic_mustache < std :: wstring >::render_current_line' can be static (but you may consider moving to unnamed namespace). [functionStatic] Mustache-4.1/mustache.hpp:987:10: performance:inconclusive: Technically the member function 'basic_mustache < std :: wstring >::render_result' can be static (but you may consider moving to unnamed namespace). [functionStatic] Mustache-4.1/mustache.hpp:800:10: performance:inconclusive: Technically the member function 'parser < string_type >::is_set_delimiter_valid' can be static (but you may consider moving to unnamed namespace). [functionStatic] Mustache-4.1/mustache.hpp:835:10: performance:inconclusive: Technically the member function 'parser < string_type >::parse_tag_contents' can be static (but you may consider moving to unnamed namespace). [functionStatic] Mustache-4.1/mustache.hpp:509:10: performance:inconclusive: Technically the member function 'line_buffer_state < kainjow :: mustache :: basic_mustache < std :: string > std :: string >::is_empty_or_contains_only_whitespace' can be static (but you may consider moving to unnamed namespace). [functionStatic] Mustache-4.1/mustache.hpp:415:10: performance:inconclusive: Technically the member function 'delimiter_set < kainjow :: mustache :: basic_mustache < std :: string > std :: string >::is_default' can be static (but you may consider moving to unnamed namespace). [functionStatic] Mustache-4.1/mustache.hpp:446:18: style: Virtual function 'push' is called from constructor 'context < kainjow :: mustache :: basic_mustache < std :: string > :: string_type >(const basic_data < kainjow :: mustache :: basic_mustache < std :: string > :: string_type >*data)' at line 440. Dynamic binding is not used. [virtualCallInConstructor] Mustache-4.1/mustache.hpp:440:9: note: Calling push Mustache-4.1/mustache.hpp:446:18: note: push is a virtual function Mustache-4.1/tests.cpp:1178:5: style: Class 'file_partial_context < kainjow :: mustache :: basic_mustache < std :: string > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:882:5: style: Class 'basic_mustache < std :: string >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:882:5: style: Class 'basic_mustache < std :: wstring >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:532:5: style: Class 'context_internal < kainjow :: mustache :: basic_mustache < std :: string > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:439:5: style: Class 'context < kainjow :: mustache :: basic_mustache < std :: string > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:193:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: string > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:196:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: string > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:199:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: string > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:202:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: string > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:205:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: string > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:223:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: string > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:226:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: string > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:229:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: string > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:232:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: string > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:240:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: string > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:193:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: wstring > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:196:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: wstring > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:199:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: wstring > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:202:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: wstring > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:205:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: wstring > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:223:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: wstring > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:226:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: wstring > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:229:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: wstring > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:232:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: wstring > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:240:5: style: Class 'basic_data < kainjow :: mustache :: basic_mustache < std :: wstring > :: string_type >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:131:5: style: Class 'basic_lambda_t < kainjow :: mustache :: basic_mustache < std :: string > std :: string >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:132:5: style: Class 'basic_lambda_t < kainjow :: mustache :: basic_mustache < std :: string > std :: string >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:131:5: style: Class 'basic_lambda_t < kainjow :: mustache :: basic_mustache < std :: wstring > std :: wstring >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/mustache.hpp:132:5: style: Class 'basic_lambda_t < kainjow :: mustache :: basic_mustache < std :: wstring > std :: wstring >' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] Mustache-4.1/tests.cpp:380:24: style: C-style pointer casting [cstyleCast] Mustache-4.1/tests.cpp:381:23: style: C-style pointer casting [cstyleCast] Mustache-4.1/tests.cpp:382:28: style: C-style pointer casting [cstyleCast] Mustache-4.1/tests.cpp:383:35: style: C-style pointer casting [cstyleCast] Mustache-4.1/mustache.hpp:1098:59: style: Local variable 'render' shadows outer function [shadowFunction] Mustache-4.1/mustache.hpp:903:18: note: Shadowed declaration Mustache-4.1/mustache.hpp:1098:59: note: Shadow variable Mustache-4.1/mustache.hpp:601:54: performance:inconclusive: Function parameter 'p' should be passed by const reference. [passedByValue] Mustache-4.1/tests.cpp:345:23: style: Variable 'stream' can be declared as reference to const [constVariableReference] Mustache-4.1/tests.cpp:1161:23: style: Variable 'stream' can be declared as reference to const [constVariableReference] Mustache-4.1/tests.cpp:411:15: warning:inconclusive: Access of moved variable 'obj1'. [accessMoved] Mustache-4.1/tests.cpp:409:19: note: Calling std::move(obj1) Mustache-4.1/tests.cpp:411:15: note: Access of moved variable 'obj1'. Mustache-4.1/tests.cpp:420:15: warning:inconclusive: Access of moved variable 'obj1'. [accessMoved] Mustache-4.1/tests.cpp:418:21: note: Calling std::move(obj1) Mustache-4.1/tests.cpp:420:15: note: Access of moved variable 'obj1'. Mustache-4.1/tests.cpp:427:15: warning:inconclusive: Access of moved variable 'lambda0'. [accessMoved] Mustache-4.1/tests.cpp:425:24: note: Calling std::move(lambda0) Mustache-4.1/tests.cpp:427:15: note: Access of moved variable 'lambda0'. Mustache-4.1/tests.cpp:433:15: warning:inconclusive: Access of moved variable 'lambda3'. [accessMoved] Mustache-4.1/tests.cpp:431:24: note: Calling std::move(lambda3) Mustache-4.1/tests.cpp:433:15: note: Access of moved variable 'lambda3'. Mustache-4.1/mustache.hpp:695:102: style: Consider using std::find_if algorithm instead of a raw loop. [useStlAlgorithm] Mustache-4.1/mustache.hpp:802:9: style: Consider using std::all_of or std::none_of algorithm instead of a raw loop. [useStlAlgorithm] Mustache-4.1/mustache.hpp:510:9: style: Consider using std::all_of or std::none_of algorithm instead of a raw loop. [useStlAlgorithm] Mustache-4.1/tests.cpp:284:30: warning: Conversion of string literal "Steve" to bool always evaluates to true. [incorrectStringBooleanError] Mustache-4.1/tests.cpp:285:30: warning: Conversion of string literal "Bill" to bool always evaluates to true. [incorrectStringBooleanError] Mustache-4.1/tests.cpp:286:30: warning: Conversion of string literal "Tim" to bool always evaluates to true. [incorrectStringBooleanError] diff: DONE