when compiling our code we try to address all warnings as well but blaze generates quite some warnings with regard to sign conversion and double promotion in our case. Especially, it keeps use from compiling with -Werror which would be extremely nice.
blaze/include/blaze/math/expressions/DMatDetExpr.h:343:61: warning: implicit conversion changes signedness: 'blaze::blas_int_t' (aka 'int') to 'unsigned long' [-Wsign-conversion] const std::unique_ptr<blas_int_t> ipiv( new blas_int_t[n] ); blaze/include/blaze/math/lapack/orgr2.h:147:42: warning: operand of ? changes signedness: 'int' to 'unsigned long' [-Wsign-conversion] const size_t offset( ( m < n )?( n - m ):( 0UL ) ); blaze/include/blaze/math/shims/Greater.h:137:23: warning: implicit conversion increases floating-point precision: 'double' to 'long double' [-Wdouble-promotion] return ( b - a ) > 1E-10;
We we wondering whether this is by design or has just not been taken care of yet. In our opinion, especially the sign conversion in the allocation could be troublesome if n is for whatever reason negative.
We would volunteer to fix as many of them as possible if that would be something you are interested in as well.
Thanks in advance!