Re: [PATCH blktests -v2] Fix build failure for discontiguous-io on 32-bit platforms

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Oct 30, 2018 at 08:02:55AM -0700, Bart Van Assche wrote:
> Details about how the build fails on 32-bit systems would have been welcome
> in the commit message. Anyway:
> 
> Reviewed-by: Bart Van Assche <bvanassche@xxxxxxx>

For the record, here's the failure.  It's the usual incomprehensible
C++ error reporting.  :-)

% schroot -c stretch-i386 -- ./build-all --blktests-only
----------------- 2018-10-30 16:00:18: Starting build of blktests
make -C src all
make[1]: Entering directory '/usr/projects/xfstests-bld/build-32/blktests/src'
g++  -O2 -std=c++11 -Wall -Wextra -Wno-sign-compare -Werror -o discontiguous-io discontiguous-io.cpp
discontiguous-io.cpp: In function 'int main(int, char**)':
discontiguous-io.cpp:294:34: error: no matching function for call to 'min(long unsigned int, size_t)'
         std::min(4ul, len - i * 4));
                                  ^
In file included from /usr/include/c++/6/bits/char_traits.h:39:0,
                 from /usr/include/c++/6/string:40,
                 from /usr/include/c++/6/bits/locale_classes.h:40,
                 from /usr/include/c++/6/bits/ios_base.h:41,
                 from /usr/include/c++/6/iomanip:40,
                 from discontiguous-io.cpp:8:
/usr/include/c++/6/bits/stl_algobase.h:195:5: note: candidate: template<class _Tp> const _Tp& std::min(const _Tp&, const _Tp&)
     min(const _Tp& __a, const _Tp& __b)
     ^~~
/usr/include/c++/6/bits/stl_algobase.h:195:5: note:   template argument deduction/substitution failed:
discontiguous-io.cpp:294:34: note:   deduced conflicting types for parameter 'const _Tp' ('long unsigned int' and 'size_t {aka unsigned int}')
         std::min(4ul, len - i * 4));
                                  ^
In file included from /usr/include/c++/6/bits/char_traits.h:39:0,
                 from /usr/include/c++/6/string:40,
                 from /usr/include/c++/6/bits/locale_classes.h:40,
                 from /usr/include/c++/6/bits/ios_base.h:41,
                 from /usr/include/c++/6/iomanip:40,
                 from discontiguous-io.cpp:8:
/usr/include/c++/6/bits/stl_algobase.h:243:5: note: candidate: template<class _Tp, class _Compare> const _Tp& std::min(const _Tp&, const _Tp&, _Compare)
     min(const _Tp& __a, const _Tp& __b, _Compare __comp)
     ^~~
/usr/include/c++/6/bits/stl_algobase.h:243:5: note:   template argument deduction/substitution failed:
discontiguous-io.cpp:294:34: note:   deduced conflicting types for parameter 'const _Tp' ('long unsigned int' and 'size_t {aka unsigned int}')
         std::min(4ul, len - i * 4));
                                  ^
Makefile:27: recipe for target 'discontiguous-io' failed
make[1]: *** [discontiguous-io] Error 1
make[1]: Leaving directory '/usr/projects/xfstests-bld/build-32/blktests/src'
Makefile:2: recipe for target 'all' failed
make: *** [all] Error 2



[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux