gil: Image checksum tests failing for variant=release and x64 arch
Adding b2 variant=release build jobs to AppVeyor in #46 which revealed that test/image.cpp is failing on optimised x64 only builds:
Checksum error in bgr121_basic_red_x (crc=2009802095 != 2137924839)
Here is the build https://ci.appveyor.com/project/stefanseefeld/gil/build/1.0.182-develop
This issue does not occur on Travis using GCC 5.4.1 and clang 4.2.1. I also was not able to reproduce it locally, on Ubuntu with GCC 5.4.0.
Failing checksum test cases
Modifying test/image.cpp to skip cases with missing CRC-s:
// Create a checksum for the given view and compare it with the reference checksum. Throw exception if different
void checksum_image_test::check_view_impl(const rgb8c_view_t& img_view, const string& name) {
+ if (_crc_map[name] == 0)
+ {
+ cerr << "no checksum, skipping " << name << endl;
+ return;
+ }
+
boost::crc_32_type checksum_acumulator;
checksum_acumulator.process_bytes(img_view.row_begin(0),img_view.size()*3);
allowed to iterate over the test cases in test/gil_reference_checksums.txt (remove failing entry, run the test, repeat until all remaining cases pass) and identify the failing ones:
bgr121_basic_red_x 7f6e24e7
bgr121_basic_white_x e4aaa1d3
bgr121_views_90cw 8565efd8
bgr121_views_flipped_ud 8f7f7d00
About this issue
- Original URL
- State: open
- Created 6 years ago
- Comments: 19 (19 by maintainers)
Commits related to this issue
- Add variant=release to Travis CI builds of tests This aims to confirm there are no issues depending on build configuration (related to #46 and #49). — committed to mloskot/gil by mloskot 6 years ago
- Temporarily comment the four checksum cases failing image tests. This is to decrease noise of CI builds failures until #49 issue has been resolved. — committed to boostorg/gil by mloskot 6 years ago
- Add variant=release to Travis CI builds of tests This aims to confirm there are no issues depending on build configuration (related to #46 and #49). — committed to mloskot/gil by mloskot 6 years ago
- Add variant=release to Travis CI builds of tests This aims to confirm there are no issues depending on build configuration (related to #46 and #49). — committed to mloskot/gil by mloskot 6 years ago
- Add variant=release to Travis CI builds of tests This aims to confirm there are no issues depending on build configuration (related to #46 and #49). — committed to mloskot/gil by mloskot 6 years ago
- Add variant=release to Travis CI builds of tests This aims to confirm there are no issues depending on build configuration (related to #46 and #49). — committed to mloskot/gil by mloskot 6 years ago
- Add Christian Henning's minimal sample for https://github.com/boostorg/gil/issues/49 — committed to mloskot/boost-gil-workshop by mloskot 6 years ago
- Temporarily comment the four checksum cases failing image tests. This is to decrease noise of CI builds failures until #49 issue has been resolved. — committed to boostorg/gil by mloskot 6 years ago
MWE v2 for Test 2 (
minimal_chhenning.cpp)