2025-07-10 11:39 ftp://ftp.de.debian.org/debian/pool/main/o/ocrad/ocrad_0.29.orig.tar.gz 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 -j6 platform: Linux-6.1.0-37-amd64-x86_64-with-glibc2.36 python: 3.11.2 client-version: 1.3.67 compiler: g++ (Debian 12.2.0-14+deb12u1) 12.2.0 cppcheck: head 2.17.0 head-info: 8f3d36a (2025-07-08 11:07:56 +0200) count: 157 149 elapsed-time: 1.8 2.4 head-timing-info: old-timing-info: head results: ocrad-0.29/feats.h:39:56: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable vbar_ [valueFlowBailoutIncompleteVar] ocrad-0.29/feats.h:53:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable col_scan [valueFlowBailoutIncompleteVar] ocrad-0.29/character.cc:151:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable code [valueFlowBailoutIncompleteVar] ocrad-0.29/character.cc:167:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable code [valueFlowBailoutIncompleteVar] ocrad-0.29/character.cc:199:54: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable code [valueFlowBailoutIncompleteVar] ocrad-0.29/character.cc:210:46: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable code [valueFlowBailoutIncompleteVar] ocrad-0.29/character.cc:223:50: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable code [valueFlowBailoutIncompleteVar] ocrad-0.29/character.cc:240:15: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable code [valueFlowBailoutIncompleteVar] ocrad-0.29/character.cc:337:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable code [valueFlowBailoutIncompleteVar] ocrad-0.29/character.cc:353:26: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable code [valueFlowBailoutIncompleteVar] ocrad-0.29/character.cc:409:41: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable code [valueFlowBailoutIncompleteVar] ocrad-0.29/feats.h:38:21: performance:inconclusive: Technically the member function 'Features::hbar' can be static (but you may consider moving to unnamed namespace). [functionStatic] ocrad-0.29/feats.h:39:21: performance:inconclusive: Technically the member function 'Features::vbar' can be static (but you may consider moving to unnamed namespace). [functionStatic] ocrad-0.29/bitmap.h:35:8: warning: The class 'Bitmap' defines member function with name 'left' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:26:8: note: Parent function 'Rectangle::left' ocrad-0.29/bitmap.h:35:8: note: Derived function 'Bitmap::left' ocrad-0.29/bitmap.h:36:8: warning: The class 'Bitmap' defines member function with name 'top' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:27:8: note: Parent function 'Rectangle::top' ocrad-0.29/bitmap.h:36:8: note: Derived function 'Bitmap::top' ocrad-0.29/bitmap.h:37:8: warning: The class 'Bitmap' defines member function with name 'right' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:28:8: note: Parent function 'Rectangle::right' ocrad-0.29/bitmap.h:37:8: note: Derived function 'Bitmap::right' ocrad-0.29/bitmap.h:38:8: warning: The class 'Bitmap' defines member function with name 'bottom' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:29:8: note: Parent function 'Rectangle::bottom' ocrad-0.29/bitmap.h:38:8: note: Derived function 'Bitmap::bottom' ocrad-0.29/bitmap.h:39:8: warning: The class 'Bitmap' defines member function with name 'height' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:30:8: note: Parent function 'Rectangle::height' ocrad-0.29/bitmap.h:39:8: note: Derived function 'Bitmap::height' ocrad-0.29/bitmap.h:40:8: warning: The class 'Bitmap' defines member function with name 'width' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:31:8: note: Parent function 'Rectangle::width' ocrad-0.29/bitmap.h:40:8: note: Derived function 'Bitmap::width' ocrad-0.29/bitmap.h:43:8: warning: The class 'Bitmap' defines member function with name 'add_point' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:32:8: note: Parent function 'Rectangle::add_point' ocrad-0.29/bitmap.h:43:8: note: Derived function 'Bitmap::add_point' ocrad-0.29/bitmap.h:44:8: warning: The class 'Bitmap' defines member function with name 'add_rectangle' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:35:8: note: Parent function 'Rectangle::add_rectangle' ocrad-0.29/bitmap.h:44:8: note: Derived function 'Bitmap::add_rectangle' ocrad-0.29/blob.h:40:8: warning: The class 'Blob' defines member function with name 'left' also defined in its parent class 'Bitmap'. [duplInheritedMember] ocrad-0.29/bitmap.h:35:8: note: Parent function 'Bitmap::left' ocrad-0.29/blob.h:40:8: note: Derived function 'Blob::left' ocrad-0.29/blob.h:41:8: warning: The class 'Blob' defines member function with name 'top' also defined in its parent class 'Bitmap'. [duplInheritedMember] ocrad-0.29/bitmap.h:36:8: note: Parent function 'Bitmap::top' ocrad-0.29/blob.h:41:8: note: Derived function 'Blob::top' ocrad-0.29/blob.h:42:8: warning: The class 'Blob' defines member function with name 'right' also defined in its parent class 'Bitmap'. [duplInheritedMember] ocrad-0.29/bitmap.h:37:8: note: Parent function 'Bitmap::right' ocrad-0.29/blob.h:42:8: note: Derived function 'Blob::right' ocrad-0.29/blob.h:43:8: warning: The class 'Blob' defines member function with name 'bottom' also defined in its parent class 'Bitmap'. [duplInheritedMember] ocrad-0.29/bitmap.h:38:8: note: Parent function 'Bitmap::bottom' ocrad-0.29/blob.h:43:8: note: Derived function 'Blob::bottom' ocrad-0.29/blob.h:44:8: warning: The class 'Blob' defines member function with name 'height' also defined in its parent class 'Bitmap'. [duplInheritedMember] ocrad-0.29/bitmap.h:39:8: note: Parent function 'Bitmap::height' ocrad-0.29/blob.h:44:8: note: Derived function 'Blob::height' ocrad-0.29/blob.h:45:8: warning: The class 'Blob' defines member function with name 'width' also defined in its parent class 'Bitmap'. [duplInheritedMember] ocrad-0.29/bitmap.h:40:8: note: Parent function 'Bitmap::width' ocrad-0.29/blob.h:45:8: note: Derived function 'Blob::width' ocrad-0.29/blob.h:40:8: warning: The class 'Blob' defines member function with name 'left' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:26:8: note: Parent function 'Rectangle::left' ocrad-0.29/blob.h:40:8: note: Derived function 'Blob::left' ocrad-0.29/blob.h:41:8: warning: The class 'Blob' defines member function with name 'top' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:27:8: note: Parent function 'Rectangle::top' ocrad-0.29/blob.h:41:8: note: Derived function 'Blob::top' ocrad-0.29/blob.h:42:8: warning: The class 'Blob' defines member function with name 'right' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:28:8: note: Parent function 'Rectangle::right' ocrad-0.29/blob.h:42:8: note: Derived function 'Blob::right' ocrad-0.29/blob.h:43:8: warning: The class 'Blob' defines member function with name 'bottom' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:29:8: note: Parent function 'Rectangle::bottom' ocrad-0.29/blob.h:43:8: note: Derived function 'Blob::bottom' ocrad-0.29/blob.h:44:8: warning: The class 'Blob' defines member function with name 'height' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:30:8: note: Parent function 'Rectangle::height' ocrad-0.29/blob.h:44:8: note: Derived function 'Blob::height' ocrad-0.29/blob.h:45:8: warning: The class 'Blob' defines member function with name 'width' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:31:8: note: Parent function 'Rectangle::width' ocrad-0.29/blob.h:45:8: note: Derived function 'Blob::width' ocrad-0.29/character.cc:107:12: style: Variable 'bi' can be declared as reference to const [constVariableReference] ocrad-0.29/character.cc:70:40: style: Consider using std::accumulate algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/character.cc:167:0: style: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/character.cc:364:44: style: Consider using std::find_if algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/character.cc:378:44: style: Consider using std::find_if algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/character.cc:395:13: style: Consider using std::find_if algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/blob.cc:111:12: warning: The class 'Blob' defines member function with name 'left' also defined in its parent class 'Bitmap'. [duplInheritedMember] ocrad-0.29/bitmap.h:35:8: note: Parent function 'Bitmap::left' ocrad-0.29/blob.cc:111:12: note: Derived function 'Blob::left' ocrad-0.29/blob.cc:118:12: warning: The class 'Blob' defines member function with name 'top' also defined in its parent class 'Bitmap'. [duplInheritedMember] ocrad-0.29/bitmap.h:36:8: note: Parent function 'Bitmap::top' ocrad-0.29/blob.cc:118:12: note: Derived function 'Blob::top' ocrad-0.29/blob.cc:125:12: warning: The class 'Blob' defines member function with name 'right' also defined in its parent class 'Bitmap'. [duplInheritedMember] ocrad-0.29/bitmap.h:37:8: note: Parent function 'Bitmap::right' ocrad-0.29/blob.cc:125:12: note: Derived function 'Blob::right' ocrad-0.29/blob.cc:132:12: warning: The class 'Blob' defines member function with name 'bottom' also defined in its parent class 'Bitmap'. [duplInheritedMember] ocrad-0.29/bitmap.h:38:8: note: Parent function 'Bitmap::bottom' ocrad-0.29/blob.cc:132:12: note: Derived function 'Blob::bottom' ocrad-0.29/blob.cc:111:12: warning: The class 'Blob' defines member function with name 'left' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:26:8: note: Parent function 'Rectangle::left' ocrad-0.29/blob.cc:111:12: note: Derived function 'Blob::left' ocrad-0.29/blob.cc:118:12: warning: The class 'Blob' defines member function with name 'top' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:27:8: note: Parent function 'Rectangle::top' ocrad-0.29/blob.cc:118:12: note: Derived function 'Blob::top' ocrad-0.29/blob.cc:125:12: warning: The class 'Blob' defines member function with name 'right' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:28:8: note: Parent function 'Rectangle::right' ocrad-0.29/blob.cc:125:12: note: Derived function 'Blob::right' ocrad-0.29/blob.cc:132:12: warning: The class 'Blob' defines member function with name 'bottom' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:29:8: note: Parent function 'Rectangle::bottom' ocrad-0.29/blob.cc:132:12: note: Derived function 'Blob::bottom' ocrad-0.29/blob.cc:153:0: style: Consider using std::find_if algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/feats.cc:70:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable col_scan [valueFlowBailoutIncompleteVar] ocrad-0.29/feats.cc:212:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable col_scan [valueFlowBailoutIncompleteVar] ocrad-0.29/bitmap.cc:59:14: warning: The class 'Bitmap' defines member function with name 'left' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:26:8: note: Parent function 'Rectangle::left' ocrad-0.29/bitmap.cc:59:14: note: Derived function 'Bitmap::left' ocrad-0.29/bitmap.cc:72:14: warning: The class 'Bitmap' defines member function with name 'top' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:27:8: note: Parent function 'Rectangle::top' ocrad-0.29/bitmap.cc:72:14: note: Derived function 'Bitmap::top' ocrad-0.29/bitmap.cc:84:14: warning: The class 'Bitmap' defines member function with name 'right' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:28:8: note: Parent function 'Rectangle::right' ocrad-0.29/bitmap.cc:84:14: note: Derived function 'Bitmap::right' ocrad-0.29/bitmap.cc:93:14: warning: The class 'Bitmap' defines member function with name 'bottom' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:29:8: note: Parent function 'Rectangle::bottom' ocrad-0.29/bitmap.cc:93:14: note: Derived function 'Bitmap::bottom' ocrad-0.29/bitmap.cc:113:14: warning: The class 'Bitmap' defines member function with name 'add_point' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:32:8: note: Parent function 'Rectangle::add_point' ocrad-0.29/bitmap.cc:113:14: note: Derived function 'Bitmap::add_point' ocrad-0.29/bitmap.cc:121:14: warning: The class 'Bitmap' defines member function with name 'add_rectangle' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:35:8: note: Parent function 'Rectangle::add_rectangle' ocrad-0.29/bitmap.cc:121:14: note: Derived function 'Bitmap::add_rectangle' ocrad-0.29/bitmap.cc:431:12: style: The scope of the variable 'lcol' can be reduced. [variableScope] ocrad-0.29/bitmap.cc:431:22: style: The scope of the variable 'rcol' can be reduced. [variableScope] ocrad-0.29/bitmap.cc:431:32: style: The scope of the variable 'black_section' can be reduced. [variableScope] ocrad-0.29/bitmap.cc:431:46: style: Variable 'black_section' is assigned a value that is never used. [unreadVariable] ocrad-0.29/main.cc:111:45: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PROGVERSION [valueFlowBailoutIncompleteVar] ocrad-0.29/main.cc:141:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ocrad-0.29/main.cc:154:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ocrad-0.29/main.cc:163:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ocrad-0.29/main.cc:172:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ocrad-0.29/main.cc:201:3: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] ocrad-0.29/main.cc:233:27: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable S_IRWXU [valueFlowBailoutIncompleteVar] ocrad-0.29/main.cc:249:47: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] ocrad-0.29/main.cc:285:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ocrad-0.29/main.cc:324:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ocrad-0.29/main.cc:359:41: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ocrad-0.29/main.cc:387:48: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ocrad-0.29/main.cc:416:40: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ocrad-0.29/main.cc:430:59: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable errno [valueFlowBailoutIncompleteVar] ocrad-0.29/main.cc:551:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdout [valueFlowBailoutIncompleteVar] ocrad-0.29/feats.cc:124:28: style: Condition 'height<1' is always true [knownConditionTrueFalse] ocrad-0.29/feats.cc:121:30: note: Assuming that condition 'begin<=end' is not redundant ocrad-0.29/feats.cc:123:48: note: Assignment 'height=end-begin+1', assigned value is less than 1 ocrad-0.29/feats.cc:124:28: note: Condition 'height<1' is always true ocrad-0.29/feats.cc:103:18: style: Variable 'seg' can be declared as reference to const [constVariableReference] ocrad-0.29/feats.cc:121:44: warning:inconclusive: Array index -1 is out of bounds. [negativeContainerIndex] ocrad-0.29/feats.cc:101:18: note: Assignment 'i=0', assigned value is 0 ocrad-0.29/feats.cc:117:51: note: Assignment 'end=(seg.size()<=limit)?i-1:i', assigned value is -1 ocrad-0.29/feats.cc:121:44: note: Negative array index ocrad-0.29/mask.cc:27:11: warning: The class 'Mask' defines member function with name 'left' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:26:8: note: Parent function 'Rectangle::left' ocrad-0.29/mask.cc:27:11: note: Derived function 'Mask::left' ocrad-0.29/mask.cc:35:11: warning: The class 'Mask' defines member function with name 'right' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:28:8: note: Parent function 'Rectangle::right' ocrad-0.29/mask.cc:35:11: note: Derived function 'Mask::right' ocrad-0.29/mask.cc:43:12: warning: The class 'Mask' defines member function with name 'top' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:27:8: note: Parent function 'Rectangle::top' ocrad-0.29/mask.cc:43:12: note: Derived function 'Mask::top' ocrad-0.29/mask.cc:52:12: warning: The class 'Mask' defines member function with name 'bottom' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:29:8: note: Parent function 'Rectangle::bottom' ocrad-0.29/mask.cc:52:12: note: Derived function 'Mask::bottom' ocrad-0.29/mask.h:40:8: warning: The class 'Mask' defines member function with name 'height' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:30:8: note: Parent function 'Rectangle::height' ocrad-0.29/mask.h:40:8: note: Derived function 'Mask::height' ocrad-0.29/mask.cc:72:12: warning: The class 'Mask' defines member function with name 'add_point' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:32:8: note: Parent function 'Rectangle::add_point' ocrad-0.29/mask.cc:72:12: note: Derived function 'Mask::add_point' ocrad-0.29/mask.cc:80:12: warning: The class 'Mask' defines member function with name 'add_rectangle' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:35:8: note: Parent function 'Rectangle::add_rectangle' ocrad-0.29/mask.cc:80:12: note: Derived function 'Mask::add_rectangle' ocrad-0.29/mask.cc:95:12: warning: The class 'Mask' defines member function with name 'includes' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:59:8: note: Parent function 'Rectangle::includes' ocrad-0.29/mask.cc:95:12: note: Derived function 'Mask::includes' ocrad-0.29/mask.cc:105:12: warning: The class 'Mask' defines member function with name 'includes' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:62:8: note: Parent function 'Rectangle::includes' ocrad-0.29/mask.cc:105:12: note: Derived function 'Mask::includes' ocrad-0.29/mask.cc:111:11: warning: The class 'Mask' defines member function with name 'distance' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:93:7: note: Parent function 'Rectangle::distance' ocrad-0.29/mask.cc:111:11: note: Derived function 'Mask::distance' ocrad-0.29/mask.cc:128:11: warning: The class 'Mask' defines member function with name 'distance' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:95:7: note: Parent function 'Rectangle::distance' ocrad-0.29/mask.cc:128:11: note: Derived function 'Mask::distance' ocrad-0.29/ocradcheck.cc:49:41: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable PROGVERSION [valueFlowBailoutIncompleteVar] ocrad-0.29/ocradcheck.cc:58:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ocrad-0.29/ocradcheck.cc:101:30: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ocrad-0.29/page_image_io.cc:36:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] ocrad-0.29/page_image_io.cc:261:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ocrad-0.29/ocradlib.cc:75:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable nothrow [valueFlowBailoutIncompleteVar] ocrad-0.29/ocradlib.cc:128:54: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stdin [valueFlowBailoutIncompleteVar] ocrad-0.29/png_io.cc:33:0: error: #error "Wrong libpng version. At least 1.2.9 is required." [preprocessorErrorDirective] ocrad-0.29/png_io.cc:33:2: error: #error "Wrong libpng version. At least 1.2.9 is required." [preprocessorErrorDirective] ocrad-0.29/ocradlib.cc:89:55: style: Parameter 'ocrdes' can be declared as pointer to const [constParameterPointer] ocrad-0.29/rectangle.cc:40:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ocrad-0.29/rectangle.cc:50:40: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ocrad-0.29/page_image_io.cc:134:13: style: Local variable 'maxval' shadows outer function [shadowFunction] ocrad-0.29/page_image.h:67:11: note: Shadowed declaration ocrad-0.29/page_image_io.cc:134:13: note: Shadow variable ocrad-0.29/page_image_io.cc:154:13: style: Local variable 'maxval' shadows outer function [shadowFunction] ocrad-0.29/page_image.h:67:11: note: Shadowed declaration ocrad-0.29/page_image_io.cc:154:13: note: Shadow variable ocrad-0.29/page_image_io.cc:174:13: style: Local variable 'maxval' shadows outer function [shadowFunction] ocrad-0.29/page_image.h:67:11: note: Shadowed declaration ocrad-0.29/page_image_io.cc:174:13: note: Shadow variable ocrad-0.29/page_image_io.cc:199:13: style: Local variable 'maxval' shadows outer function [shadowFunction] ocrad-0.29/page_image.h:67:11: note: Shadowed declaration ocrad-0.29/page_image_io.cc:199:13: note: Shadow variable ocrad-0.29/textline_r2.cc:284:43: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable code [valueFlowBailoutIncompleteVar] ocrad-0.29/textline.cc:167:15: style: Variable 'c1' can be declared as reference to const [constVariableReference] ocrad-0.29/textline.cc:168:15: style: Variable 'c2' can be declared as reference to const [constVariableReference] ocrad-0.29/textline.cc:120:0: style: Consider using std::find_if algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/textpage.cc:443:19: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ocrad-0.29/profile.cc:643:27: style: Condition 'd==dmax' is always true [knownConditionTrueFalse] ocrad-0.29/profile.cc:643:13: note: Assuming that condition 'd>dmax' is not redundant ocrad-0.29/profile.cc:642:11: note: Assuming that condition 'd>=dmax' is not redundant ocrad-0.29/profile.cc:643:27: note: Condition 'd==dmax' is always true ocrad-0.29/profile.cc:228:9: style: Local variable 'min' shadows outer function [shadowFunction] ocrad-0.29/profile.h:43:7: note: Shadowed declaration ocrad-0.29/profile.cc:228:9: note: Shadow variable ocrad-0.29/profile.cc:586:7: style: Local variable 'minima' shadows outer function [shadowFunction] ocrad-0.29/profile.h:68:8: note: Shadowed declaration ocrad-0.29/profile.cc:586:7: note: Shadow variable ocrad-0.29/profile.cc:102:48: style: Consider using std::accumulate algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/profile.cc:167:35: style: Consider using std::accumulate algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/profile.cc:340:0: style: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/profile.cc:367:0: style: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/profile.cc:517:0: style: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/profile.cc:574:0: style: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/track.cc:143:21: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable stderr [valueFlowBailoutIncompleteVar] ocrad-0.29/mask.h:35:7: warning: The class 'Mask' defines member function with name 'left' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:26:8: note: Parent function 'Rectangle::left' ocrad-0.29/mask.h:35:7: note: Derived function 'Mask::left' ocrad-0.29/mask.h:36:7: warning: The class 'Mask' defines member function with name 'right' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:28:8: note: Parent function 'Rectangle::right' ocrad-0.29/mask.h:36:7: note: Derived function 'Mask::right' ocrad-0.29/mask.h:38:8: warning: The class 'Mask' defines member function with name 'top' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:27:8: note: Parent function 'Rectangle::top' ocrad-0.29/mask.h:38:8: note: Derived function 'Mask::top' ocrad-0.29/mask.h:39:8: warning: The class 'Mask' defines member function with name 'bottom' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:29:8: note: Parent function 'Rectangle::bottom' ocrad-0.29/mask.h:39:8: note: Derived function 'Mask::bottom' ocrad-0.29/mask.h:43:8: warning: The class 'Mask' defines member function with name 'add_point' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:32:8: note: Parent function 'Rectangle::add_point' ocrad-0.29/mask.h:43:8: note: Derived function 'Mask::add_point' ocrad-0.29/mask.h:44:8: warning: The class 'Mask' defines member function with name 'add_rectangle' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:35:8: note: Parent function 'Rectangle::add_rectangle' ocrad-0.29/mask.h:44:8: note: Derived function 'Mask::add_rectangle' ocrad-0.29/mask.h:46:8: warning: The class 'Mask' defines member function with name 'includes' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:59:8: note: Parent function 'Rectangle::includes' ocrad-0.29/mask.h:46:8: note: Derived function 'Mask::includes' ocrad-0.29/mask.h:47:8: warning: The class 'Mask' defines member function with name 'includes' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:62:8: note: Parent function 'Rectangle::includes' ocrad-0.29/mask.h:47:8: note: Derived function 'Mask::includes' ocrad-0.29/mask.h:49:7: warning: The class 'Mask' defines member function with name 'distance' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:93:7: note: Parent function 'Rectangle::distance' ocrad-0.29/mask.h:49:7: note: Derived function 'Mask::distance' ocrad-0.29/mask.h:50:7: warning: The class 'Mask' defines member function with name 'distance' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:95:7: note: Parent function 'Rectangle::distance' ocrad-0.29/mask.h:50:7: note: Derived function 'Mask::distance' ocrad-0.29/textpage.cc:46:3: style: Struct 'Zone' has a constructor with 1 argument that is not explicit. [noExplicitConstructor] ocrad-0.29/textpage.cc:79:10: warning: %d in format string (no. 1) requires 'int' but the argument type is 'unsigned int'. [invalidPrintfArgType_sint] ocrad-0.29/textpage.cc:116:12: style: Variable 'b' can be declared as reference to const [constVariableReference] ocrad-0.29/textpage.cc:64:9: style: Consider using std::accumulate algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/textpage.cc:514:11: style: Consider using std::accumulate algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/textpage.cc:523:11: style: Consider using std::accumulate algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/textline_r2.cc:49:16: style:inconclusive: Technically the member function 'Textline::check_lower_ambiguous' can be const. [functionConst] ocrad-0.29/textline.h:26:8: note: Technically the member function 'Textline::check_lower_ambiguous' can be const. ocrad-0.29/textline_r2.cc:49:16: note: Technically the member function 'Textline::check_lower_ambiguous' can be const. ocrad-0.29/textblock.cc:373:18: style: Variable 'line1' can be declared as reference to const [constVariableReference] ocrad-0.29/textblock.cc:374:18: style: Variable 'line2' can be declared as reference to const [constVariableReference] ocrad-0.29/textblock.cc:375:18: style: Variable 'line3' can be declared as reference to const [constVariableReference] ocrad-0.29/textblock.cc:435:16: style: Variable 'line1' can be declared as reference to const [constVariableReference] ocrad-0.29/textblock.cc:484:11: style: Consider using std::accumulate algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/user_filter.cc:86:59: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] ocrad-0.29/user_filter.cc:101:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable EOF [valueFlowBailoutIncompleteVar] ocrad-0.29/user_filter.cc:125:33: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable code [valueFlowBailoutIncompleteVar] ocrad-0.29/user_filter.cc:249:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable code [valueFlowBailoutIncompleteVar] ocrad-0.29/textline_r2.cc:215:13: style: Local variable 'c' shadows outer variable [shadowVariable] ocrad-0.29/textline_r2.cc:201:17: note: Shadowed declaration ocrad-0.29/textline_r2.cc:215:13: note: Shadow variable ocrad-0.29/textline_r2.cc:465:21: style: Variable 'c2' can be declared as reference to const [constVariableReference] ocrad-0.29/textline_r2.cc:551:21: style: Variable 'c' can be declared as reference to const [constVariableReference] ocrad-0.29/textline_r2.cc:584:19: style: Variable 'c' can be declared as reference to const [constVariableReference] ocrad-0.29/textline_r2.cc:690:21: style: Variable 'c2' can be declared as reference to const [constVariableReference] ocrad-0.29/feats_test0.cc:437:17: style: Local variable 'col' shadows outer variable [shadowVariable] ocrad-0.29/feats_test0.cc:398:15: note: Shadowed declaration ocrad-0.29/feats_test0.cc:437:17: note: Shadow variable ocrad-0.29/user_filter.cc:134:18: performance:inconclusive: Technically the member function 'User_filter::parse_char' can be static (but you may consider moving to unnamed namespace). [functionStatic] ocrad-0.29/user_filter.h:39:7: note: Technically the member function 'User_filter::parse_char' can be static (but you may consider moving to unnamed namespace). ocrad-0.29/user_filter.cc:134:18: note: Technically the member function 'User_filter::parse_char' can be static (but you may consider moving to unnamed namespace). ocrad-0.29/user_filter.cc:249:38: style: Consider using std::find_if algorithm instead of a raw loop. [useStlAlgorithm] ocrad-0.29/page_image.cc:556:11: style: Condition 'n' is always true [knownConditionTrueFalse] ocrad-0.29/page_image.cc:550:14: note: Assuming that condition 'n>=2' is not redundant ocrad-0.29/page_image.cc:552:21: note: Assuming condition is false ocrad-0.29/page_image.cc:556:11: note: Condition 'n' is always true ocrad-0.29/page_image.cc:557:16: style: Condition 'n' is always true [knownConditionTrueFalse] ocrad-0.29/page_image.cc:550:14: note: Assuming that condition 'n>=2' is not redundant ocrad-0.29/page_image.cc:552:21: note: Assuming condition is false ocrad-0.29/page_image.cc:557:16: note: Condition 'n' is always true ocrad-0.29/page_image.cc:416:15: style: Consider using std::accumulate algorithm instead of a raw loop. [useStlAlgorithm] diff: 2.17.0 ocrad-0.29/bitmap.cc:100:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable data [valueFlowBailoutIncompleteVar] head ocrad-0.29/bitmap.cc:59:14: warning: The class 'Bitmap' defines member function with name 'left' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:26:8: note: Parent function 'Rectangle::left' ocrad-0.29/bitmap.cc:59:14: note: Derived function 'Bitmap::left' 2.17.0 ocrad-0.29/bitmap.cc:64:7: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable data [valueFlowBailoutIncompleteVar] head ocrad-0.29/bitmap.cc:72:14: warning: The class 'Bitmap' defines member function with name 'top' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:27:8: note: Parent function 'Rectangle::top' ocrad-0.29/bitmap.cc:72:14: note: Derived function 'Bitmap::top' head ocrad-0.29/bitmap.cc:84:14: warning: The class 'Bitmap' defines member function with name 'right' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:28:8: note: Parent function 'Rectangle::right' ocrad-0.29/bitmap.cc:84:14: note: Derived function 'Bitmap::right' 2.17.0 ocrad-0.29/bitmap.cc:89:5: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable data [valueFlowBailoutIncompleteVar] head ocrad-0.29/bitmap.cc:93:14: warning: The class 'Bitmap' defines member function with name 'bottom' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:29:8: note: Parent function 'Rectangle::bottom' ocrad-0.29/bitmap.cc:93:14: note: Derived function 'Bitmap::bottom' 2.17.0 ocrad-0.29/bitmap.h:35:8: warning: The class 'Bitmap' defines member function with name 'left' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/bitmap.cc:59:14: note: Parent function 'Rectangle::left' ocrad-0.29/bitmap.h:35:8: note: Derived function 'Bitmap::left' 2.17.0 ocrad-0.29/bitmap.h:35:8: warning: The class 'Bitmap' defines member function with name 'left' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/blob.cc:111:12: note: Parent function 'Rectangle::left' ocrad-0.29/bitmap.h:35:8: note: Derived function 'Bitmap::left' 2.17.0 ocrad-0.29/bitmap.h:36:8: warning: The class 'Bitmap' defines member function with name 'top' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/bitmap.cc:72:14: note: Parent function 'Rectangle::top' ocrad-0.29/bitmap.h:36:8: note: Derived function 'Bitmap::top' 2.17.0 ocrad-0.29/bitmap.h:36:8: warning: The class 'Bitmap' defines member function with name 'top' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/blob.cc:118:12: note: Parent function 'Rectangle::top' ocrad-0.29/bitmap.h:36:8: note: Derived function 'Bitmap::top' 2.17.0 ocrad-0.29/bitmap.h:37:8: warning: The class 'Bitmap' defines member function with name 'right' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/bitmap.cc:84:14: note: Parent function 'Rectangle::right' ocrad-0.29/bitmap.h:37:8: note: Derived function 'Bitmap::right' 2.17.0 ocrad-0.29/bitmap.h:37:8: warning: The class 'Bitmap' defines member function with name 'right' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/blob.cc:125:12: note: Parent function 'Rectangle::right' ocrad-0.29/bitmap.h:37:8: note: Derived function 'Bitmap::right' 2.17.0 ocrad-0.29/bitmap.h:38:8: warning: The class 'Bitmap' defines member function with name 'bottom' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/bitmap.cc:93:14: note: Parent function 'Rectangle::bottom' ocrad-0.29/bitmap.h:38:8: note: Derived function 'Bitmap::bottom' 2.17.0 ocrad-0.29/bitmap.h:38:8: warning: The class 'Bitmap' defines member function with name 'bottom' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/blob.cc:132:12: note: Parent function 'Rectangle::bottom' ocrad-0.29/bitmap.h:38:8: note: Derived function 'Bitmap::bottom' head ocrad-0.29/blob.cc:111:12: warning: The class 'Blob' defines member function with name 'left' also defined in its parent class 'Bitmap'. [duplInheritedMember] ocrad-0.29/bitmap.h:35:8: note: Parent function 'Bitmap::left' ocrad-0.29/blob.cc:111:12: note: Derived function 'Blob::left' head ocrad-0.29/blob.cc:111:12: warning: The class 'Blob' defines member function with name 'left' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:26:8: note: Parent function 'Rectangle::left' ocrad-0.29/blob.cc:111:12: note: Derived function 'Blob::left' head ocrad-0.29/blob.cc:118:12: warning: The class 'Blob' defines member function with name 'top' also defined in its parent class 'Bitmap'. [duplInheritedMember] ocrad-0.29/bitmap.h:36:8: note: Parent function 'Bitmap::top' ocrad-0.29/blob.cc:118:12: note: Derived function 'Blob::top' head ocrad-0.29/blob.cc:118:12: warning: The class 'Blob' defines member function with name 'top' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:27:8: note: Parent function 'Rectangle::top' ocrad-0.29/blob.cc:118:12: note: Derived function 'Blob::top' head ocrad-0.29/blob.cc:125:12: warning: The class 'Blob' defines member function with name 'right' also defined in its parent class 'Bitmap'. [duplInheritedMember] ocrad-0.29/bitmap.h:37:8: note: Parent function 'Bitmap::right' ocrad-0.29/blob.cc:125:12: note: Derived function 'Blob::right' head ocrad-0.29/blob.cc:125:12: warning: The class 'Blob' defines member function with name 'right' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:28:8: note: Parent function 'Rectangle::right' ocrad-0.29/blob.cc:125:12: note: Derived function 'Blob::right' head ocrad-0.29/blob.cc:132:12: warning: The class 'Blob' defines member function with name 'bottom' also defined in its parent class 'Bitmap'. [duplInheritedMember] ocrad-0.29/bitmap.h:38:8: note: Parent function 'Bitmap::bottom' ocrad-0.29/blob.cc:132:12: note: Derived function 'Blob::bottom' head ocrad-0.29/blob.cc:132:12: warning: The class 'Blob' defines member function with name 'bottom' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:29:8: note: Parent function 'Rectangle::bottom' ocrad-0.29/blob.cc:132:12: note: Derived function 'Blob::bottom' head ocrad-0.29/blob.cc:153:0: style: Consider using std::find_if algorithm instead of a raw loop. [useStlAlgorithm] 2.17.0 ocrad-0.29/blob.h:40:8: warning: The class 'Blob' defines member function with name 'left' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/blob.cc:111:12: note: Parent function 'Rectangle::left' ocrad-0.29/blob.h:40:8: note: Derived function 'Blob::left' 2.17.0 ocrad-0.29/blob.h:41:8: warning: The class 'Blob' defines member function with name 'top' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/blob.cc:118:12: note: Parent function 'Rectangle::top' ocrad-0.29/blob.h:41:8: note: Derived function 'Blob::top' 2.17.0 ocrad-0.29/blob.h:42:8: warning: The class 'Blob' defines member function with name 'right' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/blob.cc:125:12: note: Parent function 'Rectangle::right' ocrad-0.29/blob.h:42:8: note: Derived function 'Blob::right' 2.17.0 ocrad-0.29/blob.h:43:8: warning: The class 'Blob' defines member function with name 'bottom' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/blob.cc:132:12: note: Parent function 'Rectangle::bottom' ocrad-0.29/blob.h:43:8: note: Derived function 'Blob::bottom' head ocrad-0.29/character.cc:167:0: style: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm] head ocrad-0.29/character.cc:364:44: style: Consider using std::find_if algorithm instead of a raw loop. [useStlAlgorithm] head ocrad-0.29/character.cc:378:44: style: Consider using std::find_if algorithm instead of a raw loop. [useStlAlgorithm] head ocrad-0.29/character.cc:395:13: style: Consider using std::find_if algorithm instead of a raw loop. [useStlAlgorithm] head ocrad-0.29/character.cc:70:40: style: Consider using std::accumulate algorithm instead of a raw loop. [useStlAlgorithm] head ocrad-0.29/mask.cc:27:11: warning: The class 'Mask' defines member function with name 'left' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:26:8: note: Parent function 'Rectangle::left' ocrad-0.29/mask.cc:27:11: note: Derived function 'Mask::left' 2.17.0 ocrad-0.29/mask.cc:29:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable data [valueFlowBailoutIncompleteVar] head ocrad-0.29/mask.cc:35:11: warning: The class 'Mask' defines member function with name 'right' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:28:8: note: Parent function 'Rectangle::right' ocrad-0.29/mask.cc:35:11: note: Derived function 'Mask::right' 2.17.0 ocrad-0.29/mask.cc:37:42: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable data [valueFlowBailoutIncompleteVar] head ocrad-0.29/mask.cc:43:12: warning: The class 'Mask' defines member function with name 'top' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:27:8: note: Parent function 'Rectangle::top' ocrad-0.29/mask.cc:43:12: note: Derived function 'Mask::top' head ocrad-0.29/mask.cc:52:12: warning: The class 'Mask' defines member function with name 'bottom' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/rectangle.h:29:8: note: Parent function 'Rectangle::bottom' ocrad-0.29/mask.cc:52:12: note: Derived function 'Mask::bottom' 2.17.0 ocrad-0.29/mask.h:38:8: warning: The class 'Mask' defines member function with name 'top' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/mask.cc:43:12: note: Parent function 'Rectangle::top' ocrad-0.29/mask.h:38:8: note: Derived function 'Mask::top' 2.17.0 ocrad-0.29/mask.h:39:8: warning: The class 'Mask' defines member function with name 'bottom' also defined in its parent class 'Rectangle'. [duplInheritedMember] ocrad-0.29/mask.cc:52:12: note: Parent function 'Rectangle::bottom' ocrad-0.29/mask.h:39:8: note: Derived function 'Mask::bottom' head ocrad-0.29/page_image.cc:416:15: style: Consider using std::accumulate algorithm instead of a raw loop. [useStlAlgorithm] head ocrad-0.29/png_io.cc:33:2: error: #error "Wrong libpng version. At least 1.2.9 is required." [preprocessorErrorDirective] head ocrad-0.29/profile.cc:102:48: style: Consider using std::accumulate algorithm instead of a raw loop. [useStlAlgorithm] head ocrad-0.29/profile.cc:167:35: style: Consider using std::accumulate algorithm instead of a raw loop. [useStlAlgorithm] head ocrad-0.29/profile.cc:340:0: style: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm] head ocrad-0.29/profile.cc:367:0: style: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm] head ocrad-0.29/profile.cc:517:0: style: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm] head ocrad-0.29/profile.cc:574:0: style: Consider using std::any_of algorithm instead of a raw loop. [useStlAlgorithm] 2.17.0 ocrad-0.29/rectangle.h:26:8: style:inconclusive: Technically the member function 'Rectangle::left' can be const. [functionConst] ocrad-0.29/bitmap.cc:59:14: note: Technically the member function 'Rectangle::left' can be const. ocrad-0.29/rectangle.h:26:8: note: Technically the member function 'Rectangle::left' can be const. 2.17.0 ocrad-0.29/rectangle.h:26:8: style:inconclusive: Technically the member function 'Rectangle::left' can be const. [functionConst] ocrad-0.29/blob.cc:111:12: note: Technically the member function 'Rectangle::left' can be const. ocrad-0.29/rectangle.h:26:8: note: Technically the member function 'Rectangle::left' can be const. 2.17.0 ocrad-0.29/rectangle.h:27:8: style:inconclusive: Technically the member function 'Rectangle::top' can be const. [functionConst] ocrad-0.29/blob.cc:118:12: note: Technically the member function 'Rectangle::top' can be const. ocrad-0.29/rectangle.h:27:8: note: Technically the member function 'Rectangle::top' can be const. 2.17.0 ocrad-0.29/rectangle.h:27:8: style:inconclusive: Technically the member function 'Rectangle::top' can be const. [functionConst] ocrad-0.29/mask.cc:43:12: note: Technically the member function 'Rectangle::top' can be const. ocrad-0.29/rectangle.h:27:8: note: Technically the member function 'Rectangle::top' can be const. 2.17.0 ocrad-0.29/rectangle.h:28:8: style:inconclusive: Technically the member function 'Rectangle::right' can be const. [functionConst] ocrad-0.29/bitmap.cc:84:14: note: Technically the member function 'Rectangle::right' can be const. ocrad-0.29/rectangle.h:28:8: note: Technically the member function 'Rectangle::right' can be const. 2.17.0 ocrad-0.29/rectangle.h:28:8: style:inconclusive: Technically the member function 'Rectangle::right' can be const. [functionConst] ocrad-0.29/blob.cc:125:12: note: Technically the member function 'Rectangle::right' can be const. ocrad-0.29/rectangle.h:28:8: note: Technically the member function 'Rectangle::right' can be const. 2.17.0 ocrad-0.29/rectangle.h:29:8: style:inconclusive: Technically the member function 'Rectangle::bottom' can be const. [functionConst] ocrad-0.29/bitmap.cc:93:14: note: Technically the member function 'Rectangle::bottom' can be const. ocrad-0.29/rectangle.h:29:8: note: Technically the member function 'Rectangle::bottom' can be const. 2.17.0 ocrad-0.29/rectangle.h:29:8: style:inconclusive: Technically the member function 'Rectangle::bottom' can be const. [functionConst] ocrad-0.29/blob.cc:132:12: note: Technically the member function 'Rectangle::bottom' can be const. ocrad-0.29/rectangle.h:29:8: note: Technically the member function 'Rectangle::bottom' can be const. 2.17.0 ocrad-0.29/rectangle.h:29:8: style:inconclusive: Technically the member function 'Rectangle::bottom' can be const. [functionConst] ocrad-0.29/mask.cc:52:12: note: Technically the member function 'Rectangle::bottom' can be const. ocrad-0.29/rectangle.h:29:8: note: Technically the member function 'Rectangle::bottom' can be const. head ocrad-0.29/textblock.cc:484:11: style: Consider using std::accumulate algorithm instead of a raw loop. [useStlAlgorithm] head ocrad-0.29/textline.cc:120:0: style: Consider using std::find_if algorithm instead of a raw loop. [useStlAlgorithm] 2.17.0 ocrad-0.29/textline.h:26:8: style:inconclusive: Technically the member function 'Textline::check_lower_ambiguous' can be const. [functionConst] ocrad-0.29/textline_r2.cc:49:16: note: Technically the member function 'Textline::check_lower_ambiguous' can be const. ocrad-0.29/textline.h:26:8: note: Technically the member function 'Textline::check_lower_ambiguous' can be const. head ocrad-0.29/textline_r2.cc:49:16: style:inconclusive: Technically the member function 'Textline::check_lower_ambiguous' can be const. [functionConst] ocrad-0.29/textline.h:26:8: note: Technically the member function 'Textline::check_lower_ambiguous' can be const. ocrad-0.29/textline_r2.cc:49:16: note: Technically the member function 'Textline::check_lower_ambiguous' can be const. head ocrad-0.29/textpage.cc:514:11: style: Consider using std::accumulate algorithm instead of a raw loop. [useStlAlgorithm] head ocrad-0.29/textpage.cc:523:11: style: Consider using std::accumulate algorithm instead of a raw loop. [useStlAlgorithm] head ocrad-0.29/textpage.cc:64:9: style: Consider using std::accumulate algorithm instead of a raw loop. [useStlAlgorithm] head ocrad-0.29/user_filter.cc:134:18: performance:inconclusive: Technically the member function 'User_filter::parse_char' can be static (but you may consider moving to unnamed namespace). [functionStatic] ocrad-0.29/user_filter.h:39:7: note: Technically the member function 'User_filter::parse_char' can be static (but you may consider moving to unnamed namespace). ocrad-0.29/user_filter.cc:134:18: note: Technically the member function 'User_filter::parse_char' can be static (but you may consider moving to unnamed namespace). head ocrad-0.29/user_filter.cc:249:38: style: Consider using std::find_if algorithm instead of a raw loop. [useStlAlgorithm] 2.17.0 ocrad-0.29/user_filter.h:39:7: performance:inconclusive: Technically the member function 'User_filter::parse_char' can be static (but you may consider moving to unnamed namespace). [functionStatic] ocrad-0.29/user_filter.cc:134:18: note: Technically the member function 'User_filter::parse_char' can be static (but you may consider moving to unnamed namespace). ocrad-0.29/user_filter.h:39:7: note: Technically the member function 'User_filter::parse_char' can be static (but you may consider moving to unnamed namespace). DONE