Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MatrixTimesVector tests fail on macOS ppc (all other pass) #5

Open
barracuda156 opened this issue Jan 11, 2023 · 5 comments
Open

MatrixTimesVector tests fail on macOS ppc (all other pass) #5

barracuda156 opened this issue Jan 11, 2023 · 5 comments

Comments

@barracuda156
Copy link

[==========] 31 tests from 5 test suites ran. (95552 ms total)
[  PASSED  ] 28 tests.
[  FAILED  ] 3 tests, listed below:
[  FAILED  ] MatrixTimesVector.Gemv
[  FAILED  ] MatrixTimesVector.GemvParallel
[  FAILED  ] MatrixTimesVector.GemvBLAS

 3 FAILED TESTS
@barracuda156
Copy link
Author

Build log:

:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0  -c -I../include -Iinclude  src/gtest_tlib_layout.cpp -o build/gtest_tlib_layout.o
:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0  -c -I../include -Iinclude  src/gtest_tlib_mtv.cpp -o build/gtest_tlib_mtv.o
:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0  -c -I../include -Iinclude  src/gtest_tlib_shape.cpp -o build/gtest_tlib_shape.o
:info:test In file included from src/gtest_tlib_shape.cpp:9:
:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_matrix(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int> >]':
:info:test src/gtest_tlib_shape.cpp:84:3:   required from here
:info:test ../include/tlib/detail/shape.h:72:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]
:info:test    72 |         if(std::distance(begin,end) < 2u)
:info:test       |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_tensor(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int> >]':
:info:test src/gtest_tlib_shape.cpp:99:3:   required from here
:info:test ../include/tlib/detail/shape.h:86:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]
:info:test    86 |         if(std::distance(begin,end) < 3u)
:info:test       |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0  -c -I../include -Iinclude  src/gtest_tlib_strides.cpp -o build/gtest_tlib_strides.o
:info:test In file included from src/gtest_tlib_strides.cpp:25:
:info:test ../include/tlib/detail/strides.h: In instantiation of 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; InputIt2 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; OutputIt = __gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int> >]':
:info:test ../include/tlib/detail/strides.h:64:17:   required from 'auto tlib::detail::generate_strides(const std::vector<T>&, const std::vector<T>&) [with size_type = long unsigned int]'
:info:test src/gtest_tlib_strides.cpp:35:42:   required from here
:info:test ../include/tlib/detail/strides.h:52:28: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'const int' [-Wsign-compare]
:info:test    52 |         for(auto r = 1u; r < n; ++r)
:info:test       |                          ~~^~~
:info:test In file included from ../include/tlib/detail/strides.h:25:
:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_matrix(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >]':
:info:test src/gtest_tlib_strides.cpp:74:3:   required from here
:info:test ../include/tlib/detail/shape.h:72:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]
:info:test    72 |         if(std::distance(begin,end) < 2u)
:info:test       |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_tensor(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >]':
:info:test src/gtest_tlib_strides.cpp:98:3:   required from 'StridesTest_TensorShape_Test::TestBody()::<lambda(std::size_t, const auto:37&, const auto:38&, const auto:39&, const auto:40&)> [with auto:37 = std::vector<long unsigned int>; auto:38 = std::vector<long unsigned int>; auto:39 = std::vector<long unsigned int>; auto:40 = std::vector<long unsigned int>; std::size_t = long unsigned int]'
:info:test src/gtest_tlib_strides.cpp:113:16:   required from here
:info:test ../include/tlib/detail/shape.h:86:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]
:info:test    86 |         if(std::distance(begin,end) < 3u)
:info:test       |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0  -c -I../include -Iinclude  src/gtest_tlib_ttv.cpp -o build/gtest_tlib_ttv.o
:info:test In file included from ../include/tlib/detail/tensor_times_vector.h:32,
:info:test                  from ../include/tlib/ttv.h:21,
:info:test                  from src/gtest_tlib_ttv.cpp:18:
:info:test ../include/tlib/detail/strides.h: In instantiation of 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; InputIt2 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; OutputIt = __gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int> >]':
:info:test ../include/tlib/detail/strides.h:64:17:   required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = long unsigned int]'
:info:test src/gtest_tlib_ttv.cpp:171:45:   required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::sequential_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]'
:info:test src/gtest_tlib_ttv.cpp:199:98:   required from here
:info:test ../include/tlib/detail/strides.h:52:28: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'const int' [-Wsign-compare]
:info:test    52 |         for(auto r = 1u; r < n; ++r)
:info:test       |                          ~~^~~
:info:test In file included from ../include/tlib/detail/strides.h:25:
:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_matrix(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >]':
:info:test ../include/tlib/detail/strides.h:48:16:   required from 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; InputIt2 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; OutputIt = __gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int> >]'
:info:test ../include/tlib/detail/strides.h:64:17:   required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = long unsigned int]'
:info:test src/gtest_tlib_ttv.cpp:171:45:   required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::sequential_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]'
:info:test src/gtest_tlib_ttv.cpp:199:98:   required from here
:info:test ../include/tlib/detail/shape.h:72:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]
:info:test    72 |         if(std::distance(begin,end) < 2u)
:info:test       |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_tensor(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >]':
:info:test ../include/tlib/detail/strides.h:48:53:   required from 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; InputIt2 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; OutputIt = __gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int> >]'
:info:test ../include/tlib/detail/strides.h:64:17:   required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = long unsigned int]'
:info:test src/gtest_tlib_ttv.cpp:171:45:   required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::sequential_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]'
:info:test src/gtest_tlib_ttv.cpp:199:98:   required from here
:info:test ../include/tlib/detail/shape.h:86:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]
:info:test    86 |         if(std::distance(begin,end) < 3u)
:info:test       |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:test ../include/tlib/detail/tensor_times_vector.h: In instantiation of 'void tlib::detail::ttv(tlib::execution::parallel_blas_policy, tlib::slicing::small_policy, tlib::loop_fusion::outer_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int]':
:info:test ../include/tlib/ttv.h:92:13:   required from 'void tlib::tensor_times_vector(execution_policy, slicing_policy, fusion_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int; execution_policy = execution::parallel_blas_policy; slicing_policy = slicing::small_policy; fusion_policy = loop_fusion::outer_policy]'
:info:test src/gtest_tlib_ttv.cpp:125:27:   required from 'void ttv_check(execution_policy, slicing_policy, fusion_policy, size_type, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_blas_policy; slicing_policy = tlib::slicing::small_policy; fusion_policy = tlib::loop_fusion::outer_policy]'
:info:test src/gtest_tlib_ttv.cpp:183:14:   required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_blas_policy; slicing_policy = tlib::slicing::small_policy; fusion_policy = tlib::loop_fusion::outer_policy; unsigned int rank = 2]'
:info:test src/gtest_tlib_ttv.cpp:299:98:   required from here
:info:test ../include/tlib/detail/tensor_times_vector.h:355:28: warning: variable 'na_m' set but not used [-Wunused-but-set-variable]
:info:test   355 |                 auto const na_m = na[m-1];
:info:test       |                            ^~~~
:info:test ../include/tlib/detail/tensor_times_vector.h:356:28: warning: variable 'wa_m' set but not used [-Wunused-but-set-variable]
:info:test   356 |                 auto const wa_m = wa[m-1];
:info:test       |                            ^~~~
:info:test ../include/tlib/detail/tensor_times_vector.h: In instantiation of 'void tlib::detail::set_blas_threads(size_t) [with size_t = unsigned int]':
:info:test ../include/tlib/detail/tensor_times_vector.h:521:19:   required from 'void tlib::detail::ttv(tlib::execution::parallel_policy, tlib::slicing::large_policy, tlib::loop_fusion::none_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int]'
:info:test ../include/tlib/ttv.h:92:13:   required from 'void tlib::tensor_times_vector(execution_policy, slicing_policy, fusion_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int; execution_policy = execution::parallel_policy; slicing_policy = slicing::large_policy; fusion_policy = loop_fusion::none_policy]'
:info:test src/gtest_tlib_ttv.cpp:125:27:   required from 'void ttv_check(execution_policy, slicing_policy, fusion_policy, size_type, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy]'
:info:test src/gtest_tlib_ttv.cpp:183:14:   required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]'
:info:test src/gtest_tlib_ttv.cpp:213:98:   required from here
:info:test ../include/tlib/detail/tensor_times_vector.h:51:37: warning: unused parameter 'num' [-Wunused-parameter]
:info:test    51 | inline void set_blas_threads(size_t num)
:info:test       |                              ~~~~~~~^~~
:info:test ../include/tlib/detail/tensor_times_vector.h: In instantiation of 'void tlib::detail::set_blas_threads(size_t) [with size_t = int]':
:info:test ../include/tlib/detail/tensor_times_vector.h:533:19:   required from 'void tlib::detail::ttv(tlib::execution::parallel_policy, tlib::slicing::large_policy, tlib::loop_fusion::none_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int]'
:info:test ../include/tlib/ttv.h:92:13:   required from 'void tlib::tensor_times_vector(execution_policy, slicing_policy, fusion_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int; execution_policy = execution::parallel_policy; slicing_policy = slicing::large_policy; fusion_policy = loop_fusion::none_policy]'
:info:test src/gtest_tlib_ttv.cpp:125:27:   required from 'void ttv_check(execution_policy, slicing_policy, fusion_policy, size_type, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy]'
:info:test src/gtest_tlib_ttv.cpp:183:14:   required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]'
:info:test src/gtest_tlib_ttv.cpp:213:98:   required from here
:info:test ../include/tlib/detail/tensor_times_vector.h:51:37: warning: unused parameter 'num' [-Wunused-parameter]
:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0  -c -I../include -Iinclude  src/gtest_tlib_workload.cpp -o build/gtest_tlib_workload.o
:info:test In file included from ../include/tlib/detail/tensor_times_vector.h:32,
:info:test                  from ../include/tlib/ttv.h:21,
:info:test                  from src/gtest_tlib_workload.cpp:18:
:info:test ../include/tlib/detail/strides.h: In instantiation of 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; InputIt2 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; OutputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]':
:info:test ../include/tlib/detail/strides.h:64:17:   required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = unsigned int]'
:info:test src/gtest_tlib_workload.cpp:56:43:   required from 'auto check_index_space_division(size_type, size_type) [with size_type = unsigned int; size_type rank = 3]'
:info:test src/gtest_tlib_workload.cpp:134:41:   required from here
:info:test ../include/tlib/detail/strides.h:52:28: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'const int' [-Wsign-compare]
:info:test    52 |         for(auto r = 1u; r < n; ++r)
:info:test       |                          ~~^~~
:info:test In file included from ../include/tlib/detail/strides.h:25:
:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_matrix(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]':
:info:test ../include/tlib/detail/strides.h:48:16:   required from 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; InputIt2 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; OutputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]'
:info:test ../include/tlib/detail/strides.h:64:17:   required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = unsigned int]'
:info:test src/gtest_tlib_workload.cpp:56:43:   required from 'auto check_index_space_division(size_type, size_type) [with size_type = unsigned int; size_type rank = 3]'
:info:test src/gtest_tlib_workload.cpp:134:41:   required from here
:info:test ../include/tlib/detail/shape.h:72:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]
:info:test    72 |         if(std::distance(begin,end) < 2u)
:info:test       |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_tensor(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]':
:info:test ../include/tlib/detail/strides.h:48:53:   required from 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; InputIt2 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; OutputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]'
:info:test ../include/tlib/detail/strides.h:64:17:   required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = unsigned int]'
:info:test src/gtest_tlib_workload.cpp:56:43:   required from 'auto check_index_space_division(size_type, size_type) [with size_type = unsigned int; size_type rank = 3]'
:info:test src/gtest_tlib_workload.cpp:134:41:   required from here
:info:test ../include/tlib/detail/shape.h:86:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]
:info:test    86 |         if(std::distance(begin,end) < 3u)
:info:test       |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0  -c -I../include -Iinclude  src/main.cpp -o build/main.o
:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0  build/gtest_tlib_layout.o build/gtest_tlib_mtv.o build/gtest_tlib_shape.o build/gtest_tlib_strides.o build/gtest_tlib_ttv.o build/gtest_tlib_workload.o build/main.o -lgtest -lpthread -lgomp -lpthread -lm -lopenblas -o bin/main

@barracuda156
Copy link
Author

Tests log:
ttv_tests_10.6.8_rosetta.txt

@barracuda156
Copy link
Author

@hrhee I noticed you have extra commits in your fork. Has this problem been addressed already?

@bassoy
Copy link
Owner

bassoy commented Jan 23, 2023


[==========] 31 tests from 5 test suites ran. (95552 ms total)

[  PASSED  ] 28 tests.

[  FAILED  ] 3 tests, listed below:

[  FAILED  ] MatrixTimesVector.Gemv

[  FAILED  ] MatrixTimesVector.GemvParallel

[  FAILED  ] MatrixTimesVector.GemvBLAS



 3 FAILED TESTS

Hmmm. I will have a look into it. Thanks for pointing this out.

@bassoy
Copy link
Owner

bassoy commented Jan 23, 2023

Build log:


:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0  -c -I../include -Iinclude  src/gtest_tlib_layout.cpp -o build/gtest_tlib_layout.o

:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0  -c -I../include -Iinclude  src/gtest_tlib_mtv.cpp -o build/gtest_tlib_mtv.o

:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0  -c -I../include -Iinclude  src/gtest_tlib_shape.cpp -o build/gtest_tlib_shape.o

:info:test In file included from src/gtest_tlib_shape.cpp:9:

:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_matrix(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int> >]':

:info:test src/gtest_tlib_shape.cpp:84:3:   required from here

:info:test ../include/tlib/detail/shape.h:72:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]

:info:test    72 |         if(std::distance(begin,end) < 2u)

:info:test       |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~

:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_tensor(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int> >]':

:info:test src/gtest_tlib_shape.cpp:99:3:   required from here

:info:test ../include/tlib/detail/shape.h:86:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]

:info:test    86 |         if(std::distance(begin,end) < 3u)

:info:test       |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~

:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0  -c -I../include -Iinclude  src/gtest_tlib_strides.cpp -o build/gtest_tlib_strides.o

:info:test In file included from src/gtest_tlib_strides.cpp:25:

:info:test ../include/tlib/detail/strides.h: In instantiation of 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; InputIt2 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; OutputIt = __gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int> >]':

:info:test ../include/tlib/detail/strides.h:64:17:   required from 'auto tlib::detail::generate_strides(const std::vector<T>&, const std::vector<T>&) [with size_type = long unsigned int]'

:info:test src/gtest_tlib_strides.cpp:35:42:   required from here

:info:test ../include/tlib/detail/strides.h:52:28: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'const int' [-Wsign-compare]

:info:test    52 |         for(auto r = 1u; r < n; ++r)

:info:test       |                          ~~^~~

:info:test In file included from ../include/tlib/detail/strides.h:25:

:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_matrix(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >]':

:info:test src/gtest_tlib_strides.cpp:74:3:   required from here

:info:test ../include/tlib/detail/shape.h:72:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]

:info:test    72 |         if(std::distance(begin,end) < 2u)

:info:test       |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~

:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_tensor(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >]':

:info:test src/gtest_tlib_strides.cpp:98:3:   required from 'StridesTest_TensorShape_Test::TestBody()::<lambda(std::size_t, const auto:37&, const auto:38&, const auto:39&, const auto:40&)> [with auto:37 = std::vector<long unsigned int>; auto:38 = std::vector<long unsigned int>; auto:39 = std::vector<long unsigned int>; auto:40 = std::vector<long unsigned int>; std::size_t = long unsigned int]'

:info:test src/gtest_tlib_strides.cpp:113:16:   required from here

:info:test ../include/tlib/detail/shape.h:86:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]

:info:test    86 |         if(std::distance(begin,end) < 3u)

:info:test       |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~

:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0  -c -I../include -Iinclude  src/gtest_tlib_ttv.cpp -o build/gtest_tlib_ttv.o

:info:test In file included from ../include/tlib/detail/tensor_times_vector.h:32,

:info:test                  from ../include/tlib/ttv.h:21,

:info:test                  from src/gtest_tlib_ttv.cpp:18:

:info:test ../include/tlib/detail/strides.h: In instantiation of 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; InputIt2 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; OutputIt = __gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int> >]':

:info:test ../include/tlib/detail/strides.h:64:17:   required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = long unsigned int]'

:info:test src/gtest_tlib_ttv.cpp:171:45:   required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::sequential_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]'

:info:test src/gtest_tlib_ttv.cpp:199:98:   required from here

:info:test ../include/tlib/detail/strides.h:52:28: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'const int' [-Wsign-compare]

:info:test    52 |         for(auto r = 1u; r < n; ++r)

:info:test       |                          ~~^~~

:info:test In file included from ../include/tlib/detail/strides.h:25:

:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_matrix(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >]':

:info:test ../include/tlib/detail/strides.h:48:16:   required from 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; InputIt2 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; OutputIt = __gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int> >]'

:info:test ../include/tlib/detail/strides.h:64:17:   required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = long unsigned int]'

:info:test src/gtest_tlib_ttv.cpp:171:45:   required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::sequential_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]'

:info:test src/gtest_tlib_ttv.cpp:199:98:   required from here

:info:test ../include/tlib/detail/shape.h:72:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]

:info:test    72 |         if(std::distance(begin,end) < 2u)

:info:test       |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~

:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_tensor(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >]':

:info:test ../include/tlib/detail/strides.h:48:53:   required from 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; InputIt2 = __gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >; OutputIt = __gnu_cxx::__normal_iterator<long unsigned int*, std::vector<long unsigned int> >]'

:info:test ../include/tlib/detail/strides.h:64:17:   required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = long unsigned int]'

:info:test src/gtest_tlib_ttv.cpp:171:45:   required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::sequential_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]'

:info:test src/gtest_tlib_ttv.cpp:199:98:   required from here

:info:test ../include/tlib/detail/shape.h:86:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const long unsigned int*, std::vector<long unsigned int> >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]

:info:test    86 |         if(std::distance(begin,end) < 3u)

:info:test       |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~

:info:test ../include/tlib/detail/tensor_times_vector.h: In instantiation of 'void tlib::detail::ttv(tlib::execution::parallel_blas_policy, tlib::slicing::small_policy, tlib::loop_fusion::outer_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int]':

:info:test ../include/tlib/ttv.h:92:13:   required from 'void tlib::tensor_times_vector(execution_policy, slicing_policy, fusion_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int; execution_policy = execution::parallel_blas_policy; slicing_policy = slicing::small_policy; fusion_policy = loop_fusion::outer_policy]'

:info:test src/gtest_tlib_ttv.cpp:125:27:   required from 'void ttv_check(execution_policy, slicing_policy, fusion_policy, size_type, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_blas_policy; slicing_policy = tlib::slicing::small_policy; fusion_policy = tlib::loop_fusion::outer_policy]'

:info:test src/gtest_tlib_ttv.cpp:183:14:   required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_blas_policy; slicing_policy = tlib::slicing::small_policy; fusion_policy = tlib::loop_fusion::outer_policy; unsigned int rank = 2]'

:info:test src/gtest_tlib_ttv.cpp:299:98:   required from here

:info:test ../include/tlib/detail/tensor_times_vector.h:355:28: warning: variable 'na_m' set but not used [-Wunused-but-set-variable]

:info:test   355 |                 auto const na_m = na[m-1];

:info:test       |                            ^~~~

:info:test ../include/tlib/detail/tensor_times_vector.h:356:28: warning: variable 'wa_m' set but not used [-Wunused-but-set-variable]

:info:test   356 |                 auto const wa_m = wa[m-1];

:info:test       |                            ^~~~

:info:test ../include/tlib/detail/tensor_times_vector.h: In instantiation of 'void tlib::detail::set_blas_threads(size_t) [with size_t = unsigned int]':

:info:test ../include/tlib/detail/tensor_times_vector.h:521:19:   required from 'void tlib::detail::ttv(tlib::execution::parallel_policy, tlib::slicing::large_policy, tlib::loop_fusion::none_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int]'

:info:test ../include/tlib/ttv.h:92:13:   required from 'void tlib::tensor_times_vector(execution_policy, slicing_policy, fusion_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int; execution_policy = execution::parallel_policy; slicing_policy = slicing::large_policy; fusion_policy = loop_fusion::none_policy]'

:info:test src/gtest_tlib_ttv.cpp:125:27:   required from 'void ttv_check(execution_policy, slicing_policy, fusion_policy, size_type, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy]'

:info:test src/gtest_tlib_ttv.cpp:183:14:   required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]'

:info:test src/gtest_tlib_ttv.cpp:213:98:   required from here

:info:test ../include/tlib/detail/tensor_times_vector.h:51:37: warning: unused parameter 'num' [-Wunused-parameter]

:info:test    51 | inline void set_blas_threads(size_t num)

:info:test       |                              ~~~~~~~^~~

:info:test ../include/tlib/detail/tensor_times_vector.h: In instantiation of 'void tlib::detail::set_blas_threads(size_t) [with size_t = int]':

:info:test ../include/tlib/detail/tensor_times_vector.h:533:19:   required from 'void tlib::detail::ttv(tlib::execution::parallel_policy, tlib::slicing::large_policy, tlib::loop_fusion::none_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int]'

:info:test ../include/tlib/ttv.h:92:13:   required from 'void tlib::tensor_times_vector(execution_policy, slicing_policy, fusion_policy, size_t, size_t, const value_t*, const size_t*, const size_t*, const size_t*, const value_t*, const size_t*, value_t*, const size_t*, const size_t*, const size_t*) [with value_t = double; size_t = long unsigned int; execution_policy = execution::parallel_policy; slicing_policy = slicing::large_policy; fusion_policy = loop_fusion::none_policy]'

:info:test src/gtest_tlib_ttv.cpp:125:27:   required from 'void ttv_check(execution_policy, slicing_policy, fusion_policy, size_type, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&, const std::vector<size_type>&) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy]'

:info:test src/gtest_tlib_ttv.cpp:183:14:   required from 'void check_tensor_times_vector(size_type, size_type) [with value_type = double; size_type = long unsigned int; execution_policy = tlib::execution::parallel_policy; slicing_policy = tlib::slicing::large_policy; fusion_policy = tlib::loop_fusion::none_policy; unsigned int rank = 2]'

:info:test src/gtest_tlib_ttv.cpp:213:98:   required from here

:info:test ../include/tlib/detail/tensor_times_vector.h:51:37: warning: unused parameter 'num' [-Wunused-parameter]

:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0  -c -I../include -Iinclude  src/gtest_tlib_workload.cpp -o build/gtest_tlib_workload.o

:info:test In file included from ../include/tlib/detail/tensor_times_vector.h:32,

:info:test                  from ../include/tlib/ttv.h:21,

:info:test                  from src/gtest_tlib_workload.cpp:18:

:info:test ../include/tlib/detail/strides.h: In instantiation of 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; InputIt2 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; OutputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]':

:info:test ../include/tlib/detail/strides.h:64:17:   required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = unsigned int]'

:info:test src/gtest_tlib_workload.cpp:56:43:   required from 'auto check_index_space_division(size_type, size_type) [with size_type = unsigned int; size_type rank = 3]'

:info:test src/gtest_tlib_workload.cpp:134:41:   required from here

:info:test ../include/tlib/detail/strides.h:52:28: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'const int' [-Wsign-compare]

:info:test    52 |         for(auto r = 1u; r < n; ++r)

:info:test       |                          ~~^~~

:info:test In file included from ../include/tlib/detail/strides.h:25:

:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_matrix(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]':

:info:test ../include/tlib/detail/strides.h:48:16:   required from 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; InputIt2 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; OutputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]'

:info:test ../include/tlib/detail/strides.h:64:17:   required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = unsigned int]'

:info:test src/gtest_tlib_workload.cpp:56:43:   required from 'auto check_index_space_division(size_type, size_type) [with size_type = unsigned int; size_type rank = 3]'

:info:test src/gtest_tlib_workload.cpp:134:41:   required from here

:info:test ../include/tlib/detail/shape.h:72:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]

:info:test    72 |         if(std::distance(begin,end) < 2u)

:info:test       |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~

:info:test ../include/tlib/detail/shape.h: In instantiation of 'bool tlib::detail::is_tensor(InputIt, InputIt) [with InputIt = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]':

:info:test ../include/tlib/detail/strides.h:48:53:   required from 'void tlib::detail::compute_strides(InputIt1, InputIt1, InputIt2, OutputIt) [with InputIt1 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; InputIt2 = __gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >; OutputIt = __gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >]'

:info:test ../include/tlib/detail/strides.h:64:17:   required from 'auto tlib::detail::generate_strides(const std::vector<size_type>&, const std::vector<size_type>&) [with size_type = unsigned int]'

:info:test src/gtest_tlib_workload.cpp:56:43:   required from 'auto check_index_space_division(size_type, size_type) [with size_type = unsigned int; size_type rank = 3]'

:info:test src/gtest_tlib_workload.cpp:134:41:   required from here

:info:test ../include/tlib/detail/shape.h:86:37: warning: comparison of integer expressions of different signedness: 'std::__iterator_traits<__gnu_cxx::__normal_iterator<const unsigned int*, std::vector<unsigned int, std::allocator<unsigned int> > >, void>::difference_type' {aka 'int'} and 'unsigned int' [-Wsign-compare]

:info:test    86 |         if(std::distance(begin,end) < 3u)

:info:test       |            ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~

:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0  -c -I../include -Iinclude  src/main.cpp -o build/main.o

:info:test /opt/local/bin/g++-mp-12 -Wextra -Wall -Wpedantic -Ofast -std=c++17 -pthread -fopenmp -D_GLIBCXX_USE_CXX11_ABI=0  build/gtest_tlib_layout.o build/gtest_tlib_mtv.o build/gtest_tlib_shape.o build/gtest_tlib_strides.o build/gtest_tlib_ttv.o build/gtest_tlib_workload.o build/main.o -lgtest -lpthread -lgomp -lpthread -lm -lopenblas -o bin/main

I will get after the warnings. However, they should not cause any tests to fails ...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants