boostorg / gil

Boost.GIL - Generic Image Library | Requires C++14 since Boost 1.80
https://boostorg.github.io/gil
Boost Software License 1.0
179 stars 163 forks source link

Fix for_each_pixel for non 1d iterable views #621

Closed sdebionne closed 2 years ago

sdebionne commented 3 years ago

References

Fix #620

Tasklist

sdebionne commented 3 years ago

@mloskot When the tests pass, I know we are pretty late in the dev cycle of 1.77 but any chance that this could be merged to master for 1.77?

sdebionne commented 3 years ago

Some tests fails spurioulsy and generally unrelated to Boost.GIL, for instance clang/ubuntu reports:

/usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/memory:200:16: error: no member named 'is_constant_evaluated' in namespace 'std'
      if (std::is_constant_evaluated())

or

error: toolset clang-linux initialization:
error: provided command '"clang++-9"' not found

@lpranam There seems to be an issue with the numeric extension though, MSVC complains:

D:\a\gil\boost-root\boost/gil/extension/numeric/kernel.hpp(126): error C2338: kernel must have size greater than 0
sdebionne commented 3 years ago

@mloskot How about this one 😀 ?

sdebionne commented 2 years ago

@mloskot @simmplecoder Any chance that this could be merged? It fixes a pretty annoying bug (silently returns the wrong result)...

mloskot commented 2 years ago

Shoot, it's slipped through. Please, merge, of course.

mloskot commented 2 years ago

@sdebionne

Some tests fails spurioulsy and generally unrelated to Boost.GIL, for instance clang/ubuntu reports:

/usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/memory:200:16: error: no member named 'is_constant_evaluated' in namespace 'std'
      if (std::is_constant_evaluated())

I noticed the same issue using clang 8 but with cxxstd=2a

clang-linux.compile.c++ bin.v2/libs/filesystem/build/clang-linux-8/release/cxxstd-2a-iso/threading-multi/visibility-hidden/operations.o
In file included from libs/filesystem/src/operations.cpp:23:
In file included from ./boost/smart_ptr/scoped_ptr.hpp:22:
/usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/memory:200:16: error: no member named 'is_constant_evaluated' in namespace 'std'
      if (std::is_constant_evaluated())
          ~~~~~^
1 error generated.

  "clang++-8" -c -x c++ -std=c++2a -fvisibility-inlines-hidden -fPIC -m64 -pthread -O3 -Wall -fvisibility=hidden -Wno-inline  -DBOOST_ALL_NO_LIB=1 -DBOOST_FILESYSTEM_DYN_LINK=1 -DBOOST_FILESYSTEM_HAS_FDOPENDIR_NOFOLLOW -DBOOST_FILESYSTEM_HAS_INIT_PRIORITY -DBOOST_FILESYSTEM_HAS_STATX -DBOOST_FILESYSTEM_HAS_STAT_ST_BLKSIZE -DBOOST_FILESYSTEM_HAS_STAT_ST_MTIM -DBOOST_FILESYSTEM_SOURCE -DNDEBUG -I"." -I"libs/filesystem/src"   -o "bin.v2/libs/filesystem/build/clang-linux-8/release/cxxstd-2a-iso/threading-multi/visibility-hidden/operations.o" "libs/filesystem/src/operations.cpp"

...failed clang-linux.compile.c++ bin.v2/libs/filesystem/build/clang-linux-8/release/cxxstd-2a-iso/threading-multi/visibility-hidden/operations.o...

clang-8-cxxstd-2a.zip

sdebionne commented 2 years ago

Are these issues related to partially implemented std / standard library? Again I am super happy with all the work being done on the CI, this will make the project more attractive to users and developers.

mloskot commented 2 years ago

Are these issues related to partially implemented std / standard library?

I'm not 100% sure, but looks like it.