Package: thin-provisioning-tools Version: 0.5.6-1 Severity: important User: debian-...@lists.debian.org Usertags: ftbfs-gcc-6 gcc-6-cannot-convert
This package fails to build with GCC 6. GCC 6 has not been released yet, but it's expected that GCC 6 will become the default compiler for stretch. Note that only the first error is reported; there might be more. You can find a snapshot of GCC 6 in experimental. To build with GCC 6, you can set CC=gcc-6 CXX=g++-6 explicitly. > sbuild (Debian sbuild) 0.67.0 (26 Dec 2015) on dl580gen9-02.hlinux ... > g++ -c -I. -I. -I./thin-provisioning -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g > -O2 -fstack-protector-strong -Wformat -Werror=format-security > -DSTRERROR_R_CHAR_P -o thin-provisioning/metadata_dumper.o > thin-provisioning/metadata_dumper.cc > In file included from ./persistent-data/block.h:154:0, > from ./thin-provisioning/metadata.h:24, > from ./thin-provisioning/metadata_dumper.h:23, > from thin-provisioning/metadata_dumper.cc:20: > ./persistent-data/block.tcc: In instantiation of > 'persistent_data::block_manager<BlockSize>::write_ref::~write_ref() [with > unsigned int BlockSize = 4096u]': > /usr/include/c++/6/bits/stl_pair.h:128:12: required from here > ./persistent-data/block.tcc:193:68: warning: throw will always call > terminate() [-Wterminate] > throw std::runtime_error("write_ref ref_count going below zero"); > ^ > > ./persistent-data/block.tcc:193:68: note: in C++11 destructors default to > noexcept > g++ -c -I. -I. -I./thin-provisioning -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g > -O2 -fstack-protector-strong -Wformat -Werror=format-security > -DSTRERROR_R_CHAR_P -o thin-provisioning/restore_emitter.o > thin-provisioning/restore_emitter.cc > thin-provisioning/restore_emitter.cc: In member function 'bool > {anonymous}::restorer::device_exists(thin_provisioning::thin_dev_t) const': > thin-provisioning/restore_emitter.cc:144:11: error: cannot convert > 'persistent_data::btree<1u, > thin_provisioning::device_tree_detail::device_details_traits>::maybe_value > {aka boost::optional<thin_provisioning::device_tree_detail::device_details>}' > to 'bool' in return > return v; > ^ > > In file included from ./persistent-data/block.h:154:0, > from ./thin-provisioning/metadata.h:24, > from ./thin-provisioning/restore_emitter.h:23, > from thin-provisioning/restore_emitter.cc:19: > ./persistent-data/block.tcc: In instantiation of > 'persistent_data::block_manager<BlockSize>::write_ref::~write_ref() [with > unsigned int BlockSize = 4096u]': > /usr/include/c++/6/bits/stl_pair.h:128:12: required from here > ./persistent-data/block.tcc:193:68: warning: throw will always call > terminate() [-Wterminate] > throw std::runtime_error("write_ref ref_count going below zero"); > ^ > > ./persistent-data/block.tcc:193:68: note: in C++11 destructors default to > noexcept > Makefile:128: recipe for target 'thin-provisioning/restore_emitter.o' failed -- Martin Michlmayr Linux for HPE Helion, Hewlett Packard Enterprise