Package: libboost1.74-dev
Version: 1.74.0+ds1-21.1
Severity: serious
This is a regression from g++-11:
$ echo '#include <boost/numeric/interval.hpp>' | g++-11 -x c++ -c -
$ echo '#include <boost/numeric/interval.hpp>' | g++-12 -x c++ -c -
In file included from /usr/include/boost/numeric/interval/hw_rounding.hpp:28,
from /usr/include/boost/numeric/interval.hpp:18,
from <stdin>:1:
/usr/include/boost/numeric/interval/detail/ppc_rounding_control.hpp:31:56:
error: narrowing conversion of '18444492273895866370' from 'long long unsigned
int' to 'boost::long_long_type' {aka 'long long int'} [-Wnarrowing]
31 | static const rounding_mode_struct mode_upward = {
0xFFF8000000000002LL };
|
^~~~~~~~~~~~~~~~~~~~
/usr/include/boost/numeric/interval/detail/ppc_rounding_control.hpp:32:56:
error: narrowing conversion of '18444492273895866371' from 'long long unsigned
int' to 'boost::long_long_type' {aka 'long long int'} [-Wnarrowing]
32 | static const rounding_mode_struct mode_downward = {
0xFFF8000000000003LL };
|
^~~~~~~~~~~~~~~~~~~~
/usr/include/boost/numeric/interval/detail/ppc_rounding_control.hpp:33:56:
error: narrowing conversion of '18444492273895866368' from 'long long unsigned
int' to 'boost::long_long_type' {aka 'long long int'} [-Wnarrowing]
33 | static const rounding_mode_struct mode_to_nearest = {
0xFFF8000000000000LL };
|
^~~~~~~~~~~~~~~~~~~~
/usr/include/boost/numeric/interval/detail/ppc_rounding_control.hpp:34:56:
error: narrowing conversion of '18444492273895866369' from 'long long unsigned
int' to 'boost::long_long_type' {aka 'long long int'} [-Wnarrowing]
34 | static const rounding_mode_struct mode_toward_zero = {
0xFFF8000000000001LL };
|
^~~~~~~~~~~~~~~~~~~~
The same behavior is observable with libboost1.81-dev.
Andreas