[ 95%] Building CXX object src/tools/CMakeFiles/wasm-opt.dir/wasm-opt.cpp.o
In file included from /root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:21:0:
/usr/include/c++/7/variant: In instantiation of 'constexpr const size_t std::variant_size_v<wasm::RandomFullLattice::L>':
/usr/include/c++/7/variant:702:10: required from 'struct std::__detail::__variant::__gen_vtable<wasm::RandomFullLattice::ElementImpl, wasm::RandomFullLattice::getBottom() const::<lambda(const auto:5&)>&&, wasm::RandomFullLattice::L&>'
/usr/include/c++/7/variant:1255:23: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = wasm::RandomFullLattice::getBottom() const::<lambda(const auto:5&)>; _Variants = {wasm::RandomFullLattice::L&}]'
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:866:29: required from here
/usr/include/c++/7/variant:97:29: error: incomplete type 'std::variant_size<wasm::RandomFullLattice::L>' used in nested name specifier
inline constexpr size_t variant_size_v = variant_size<_Variant>::value;
^~~~~~~~~~~~~~
/usr/include/c++/7/variant: In instantiation of 'constexpr const auto std::__detail::__variant::__gen_vtable<wasm::RandomFullLattice::ElementImpl, wasm::RandomFullLattice::getBottom() const::<lambda(const auto:5&)>&&, wasm::RandomFullLattice::L&>::_S_vtable':
/usr/include/c++/7/variant:711:29: required from 'struct std::__detail::__variant::__gen_vtable<wasm::RandomFullLattice::ElementImpl, wasm::RandomFullLattice::getBottom() const::<lambda(const auto:5&)>&&, wasm::RandomFullLattice::L&>'
/usr/include/c++/7/variant:1255:23: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = wasm::RandomFullLattice::getBottom() const::<lambda(const auto:5&)>; _Variants = {wasm::RandomFullLattice::L&}]'
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:866:29: required from here
/usr/include/c++/7/variant:711:49: error: '_S_apply' was not declared in this scope
static constexpr auto _S_vtable = _S_apply();
~~~~~~~~^~
/usr/include/c++/7/variant:711:49: note: suggested alternative: '__expl'
static constexpr auto _S_vtable = _S_apply();
~~~~~~~~^~
__expl
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp: In member function 'wasm::RandomFullLattice::Element wasm::RandomFullLattice::getBottom() const':
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:865:20: error: could not convert 'std::visit<wasm::RandomFullLattice::getBottom() const::<lambda(const auto:5&)>, wasm::RandomFullLattice::L&>(<lambda closure object>wasm::RandomFullLattice::getBottom() const::<lambda(const auto:5&)>{}, (* &((const wasm::RandomFullLattice*)this)->wasm::RandomFullLattice::lattice.std::unique_ptr<wasm::RandomFullLattice::L>::operator*()))' from 'void' to 'wasm::RandomFullLattice::Element {aka wasm::RandomElement<wasm::RandomFullLattice>}'
return std::visit([](const auto& l) { return ElementImpl{l.getBottom()}; },
~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*lattice);
~~~~~~~~~
In file included from /root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:21:0:
/usr/include/c++/7/variant: In instantiation of 'constexpr const auto std::__detail::__variant::__gen_vtable<wasm::RandomFullLattice::ElementImpl, wasm::RandomFullLattice::getTop() const::<lambda(const auto:6&)>&&, wasm::RandomFullLattice::L&>::_S_vtable':
/usr/include/c++/7/variant:711:29: required from 'struct std::__detail::__variant::__gen_vtable<wasm::RandomFullLattice::ElementImpl, wasm::RandomFullLattice::getTop() const::<lambda(const auto:6&)>&&, wasm::RandomFullLattice::L&>'
/usr/include/c++/7/variant:1255:23: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = wasm::RandomFullLattice::getTop() const::<lambda(const auto:6&)>; _Variants = {wasm::RandomFullLattice::L&}]'
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:871:29: required from here
/usr/include/c++/7/variant:711:49: error: '_S_apply' was not declared in this scope
static constexpr auto _S_vtable = _S_apply();
~~~~~~~~^~
/usr/include/c++/7/variant:711:49: note: suggested alternative: '__expl'
static constexpr auto _S_vtable = _S_apply();
~~~~~~~~^~
__expl
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp: In member function 'wasm::RandomFullLattice::Element wasm::RandomFullLattice::getTop() const':
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:870:20: error: could not convert 'std::visit<wasm::RandomFullLattice::getTop() const::<lambda(const auto:6&)>, wasm::RandomFullLattice::L&>(<lambda closure object>wasm::RandomFullLattice::getTop() const::<lambda(const auto:6&)>{}, (* &((const wasm::RandomFullLattice*)this)->wasm::RandomFullLattice::lattice.std::unique_ptr<wasm::RandomFullLattice::L>::operator*()))' from 'void' to 'wasm::RandomFullLattice::Element {aka wasm::RandomElement<wasm::RandomFullLattice>}'
return std::visit([](const auto& l) { return ElementImpl{l.getTop()}; },
~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*lattice);
~~~~~~~~~
In file included from /root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:21:0:
/usr/include/c++/7/variant: In instantiation of 'struct std::variant_size<const wasm::RandomFullLattice::ElementImpl>':
/usr/include/c++/7/variant:97:29: required from 'constexpr const size_t std::variant_size_v<const wasm::RandomFullLattice::ElementImpl>'
/usr/include/c++/7/variant:702:10: required from 'struct std::__detail::__variant::__gen_vtable<wasm::analysis::LatticeComparison, wasm::RandomFullLattice::compare(const Element&, const Element&) const::<lambda(const auto:7&, const auto:8&, const auto:9&)>&&, wasm::RandomFullLattice::L&, const wasm::RandomFullLattice::ElementImpl&, const wasm::RandomFullLattice::ElementImpl&>'
/usr/include/c++/7/variant:1255:23: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = wasm::RandomFullLattice::compare(const Element&, const Element&) const::<lambda(const auto:7&, const auto:8&, const auto:9&)>; _Variants = {wasm::RandomFullLattice::L&, const wasm::RandomFullLattice::ElementImpl&, const wasm::RandomFullLattice::ElementImpl&}]'
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:893:7: required from here
/usr/include/c++/7/variant:84:12: error: invalid use of incomplete type 'struct std::variant_size<wasm::RandomFullLattice::ElementImpl>'
struct variant_size<const _Variant> : variant_size<_Variant> {};
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/variant:81:12: note: declaration of 'struct std::variant_size<wasm::RandomFullLattice::ElementImpl>'
struct variant_size;
^~~~~~~~~~~~
/usr/include/c++/7/variant: In instantiation of 'constexpr const size_t std::variant_size_v<const wasm::RandomFullLattice::ElementImpl>':
/usr/include/c++/7/variant:702:10: required from 'struct std::__detail::__variant::__gen_vtable<wasm::analysis::LatticeComparison, wasm::RandomFullLattice::compare(const Element&, const Element&) const::<lambda(const auto:7&, const auto:8&, const auto:9&)>&&, wasm::RandomFullLattice::L&, const wasm::RandomFullLattice::ElementImpl&, const wasm::RandomFullLattice::ElementImpl&>'
/usr/include/c++/7/variant:1255:23: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = wasm::RandomFullLattice::compare(const Element&, const Element&) const::<lambda(const auto:7&, const auto:8&, const auto:9&)>; _Variants = {wasm::RandomFullLattice::L&, const wasm::RandomFullLattice::ElementImpl&, const wasm::RandomFullLattice::ElementImpl&}]'
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:893:7: required from here
/usr/include/c++/7/variant:97:29: error: 'value' is not a member of 'std::variant_size<const wasm::RandomFullLattice::ElementImpl>'
inline constexpr size_t variant_size_v = variant_size<_Variant>::value;
^~~~~~~~~~~~~~
/usr/include/c++/7/variant: In instantiation of 'constexpr const auto std::__detail::__variant::__gen_vtable<wasm::analysis::LatticeComparison, wasm::RandomFullLattice::compare(const Element&, const Element&) const::<lambda(const auto:7&, const auto:8&, const auto:9&)>&&, wasm::RandomFullLattice::L&, const wasm::RandomFullLattice::ElementImpl&, const wasm::RandomFullLattice::ElementImpl&>::_S_vtable':
/usr/include/c++/7/variant:711:29: required from 'struct std::__detail::__variant::__gen_vtable<wasm::analysis::LatticeComparison, wasm::RandomFullLattice::compare(const Element&, const Element&) const::<lambda(const auto:7&, const auto:8&, const auto:9&)>&&, wasm::RandomFullLattice::L&, const wasm::RandomFullLattice::ElementImpl&, const wasm::RandomFullLattice::ElementImpl&>'
/usr/include/c++/7/variant:1255:23: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = wasm::RandomFullLattice::compare(const Element&, const Element&) const::<lambda(const auto:7&, const auto:8&, const auto:9&)>; _Variants = {wasm::RandomFullLattice::L&, const wasm::RandomFullLattice::ElementImpl&, const wasm::RandomFullLattice::ElementImpl&}]'
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:893:7: required from here
/usr/include/c++/7/variant:711:49: error: '_S_apply' was not declared in this scope
static constexpr auto _S_vtable = _S_apply();
~~~~~~~~^~
/usr/include/c++/7/variant:711:49: note: suggested alternative: '__expl'
static constexpr auto _S_vtable = _S_apply();
~~~~~~~~^~
__expl
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp: In member function 'wasm::analysis::LatticeComparison wasm::RandomFullLattice::compare(const Element&, const Element&) const':
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:893:7: error: void value not ignored as it ought to be
*b);
^
In file included from /root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:21:0:
/usr/include/c++/7/variant: In instantiation of 'constexpr const size_t std::variant_size_v<wasm::RandomFullLattice::ElementImpl>':
/usr/include/c++/7/variant:702:10: required from 'struct std::__detail::__variant::__gen_vtable<bool, wasm::RandomFullLattice::join(wasm::RandomFullLattice::Element&, const Element&) const::<lambda(const auto:10&, auto:11&, const auto:12&)>&&, wasm::RandomFullLattice::L&, wasm::RandomFullLattice::ElementImpl&, const wasm::RandomFullLattice::ElementImpl&>'
/usr/include/c++/7/variant:1255:23: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = wasm::RandomFullLattice::join(wasm::RandomFullLattice::Element&, const Element&) const::<lambda(const auto:10&, auto:11&, const auto:12&)>; _Variants = {wasm::RandomFullLattice::L&, wasm::RandomFullLattice::ElementImpl&, const wasm::RandomFullLattice::ElementImpl&}]'
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:909:7: required from here
/usr/include/c++/7/variant:97:29: error: incomplete type 'std::variant_size<wasm::RandomFullLattice::ElementImpl>' used in nested name specifier
inline constexpr size_t variant_size_v = variant_size<_Variant>::value;
^~~~~~~~~~~~~~
/usr/include/c++/7/variant: In instantiation of 'constexpr const auto std::__detail::__variant::__gen_vtable<bool, wasm::RandomFullLattice::join(wasm::RandomFullLattice::Element&, const Element&) const::<lambda(const auto:10&, auto:11&, const auto:12&)>&&, wasm::RandomFullLattice::L&, wasm::RandomFullLattice::ElementImpl&, const wasm::RandomFullLattice::ElementImpl&>::_S_vtable':
/usr/include/c++/7/variant:711:29: required from 'struct std::__detail::__variant::__gen_vtable<bool, wasm::RandomFullLattice::join(wasm::RandomFullLattice::Element&, const Element&) const::<lambda(const auto:10&, auto:11&, const auto:12&)>&&, wasm::RandomFullLattice::L&, wasm::RandomFullLattice::ElementImpl&, const wasm::RandomFullLattice::ElementImpl&>'
/usr/include/c++/7/variant:1255:23: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = wasm::RandomFullLattice::join(wasm::RandomFullLattice::Element&, const Element&) const::<lambda(const auto:10&, auto:11&, const auto:12&)>; _Variants = {wasm::RandomFullLattice::L&, wasm::RandomFullLattice::ElementImpl&, const wasm::RandomFullLattice::ElementImpl&}]'
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:909:7: required from here
/usr/include/c++/7/variant:711:49: error: '_S_apply' was not declared in this scope
static constexpr auto _S_vtable = _S_apply();
~~~~~~~~^~
/usr/include/c++/7/variant:711:49: note: suggested alternative: '__expl'
static constexpr auto _S_vtable = _S_apply();
~~~~~~~~^~
__expl
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp: In member function 'bool wasm::RandomFullLattice::join(wasm::RandomFullLattice::Element&, const Element&) const':
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:909:7: error: void value not ignored as it ought to be
*b);
^
In file included from /root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:21:0:
/usr/include/c++/7/variant: In instantiation of 'constexpr const auto std::__detail::__variant::__gen_vtable<bool, wasm::RandomFullLattice::meet(wasm::RandomFullLattice::Element&, const Element&) const::<lambda(const auto:13&, auto:14&, const auto:15&)>&&, wasm::RandomFullLattice::L&, wasm::RandomFullLattice::ElementImpl&, const wasm::RandomFullLattice::ElementImpl&>::_S_vtable':
/usr/include/c++/7/variant:711:29: required from 'struct std::__detail::__variant::__gen_vtable<bool, wasm::RandomFullLattice::meet(wasm::RandomFullLattice::Element&, const Element&) const::<lambda(const auto:13&, auto:14&, const auto:15&)>&&, wasm::RandomFullLattice::L&, wasm::RandomFullLattice::ElementImpl&, const wasm::RandomFullLattice::ElementImpl&>'
/usr/include/c++/7/variant:1255:23: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = wasm::RandomFullLattice::meet(wasm::RandomFullLattice::Element&, const Element&) const::<lambda(const auto:13&, auto:14&, const auto:15&)>; _Variants = {wasm::RandomFullLattice::L&, wasm::RandomFullLattice::ElementImpl&, const wasm::RandomFullLattice::ElementImpl&}]'
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:925:7: required from here
/usr/include/c++/7/variant:711:49: error: '_S_apply' was not declared in this scope
static constexpr auto _S_vtable = _S_apply();
~~~~~~~~^~
/usr/include/c++/7/variant:711:49: note: suggested alternative: '__expl'
static constexpr auto _S_vtable = _S_apply();
~~~~~~~~^~
__expl
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp: In member function 'bool wasm::RandomFullLattice::meet(wasm::RandomFullLattice::Element&, const Element&) const':
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:925:7: error: void value not ignored as it ought to be
*b);
^
In file included from /root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:21:0:
/usr/include/c++/7/variant: In instantiation of 'constexpr const size_t std::variant_size_v<wasm::RandomLattice::L>':
/usr/include/c++/7/variant:702:10: required from 'struct std::__detail::__variant::__gen_vtable<wasm::RandomLattice::ElementImpl, wasm::RandomLattice::getBottom() const::<lambda(const auto:16&)>&&, wasm::RandomLattice::L&>'
/usr/include/c++/7/variant:1255:23: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = wasm::RandomLattice::getBottom() const::<lambda(const auto:16&)>; _Variants = {wasm::RandomLattice::L&}]'
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:930:29: required from here
/usr/include/c++/7/variant:97:29: error: incomplete type 'std::variant_size<wasm::RandomLattice::L>' used in nested name specifier
inline constexpr size_t variant_size_v = variant_size<_Variant>::value;
^~~~~~~~~~~~~~
/usr/include/c++/7/variant: In instantiation of 'constexpr const auto std::__detail::__variant::__gen_vtable<wasm::RandomLattice::ElementImpl, wasm::RandomLattice::getBottom() const::<lambda(const auto:16&)>&&, wasm::RandomLattice::L&>::_S_vtable':
/usr/include/c++/7/variant:711:29: required from 'struct std::__detail::__variant::__gen_vtable<wasm::RandomLattice::ElementImpl, wasm::RandomLattice::getBottom() const::<lambda(const auto:16&)>&&, wasm::RandomLattice::L&>'
/usr/include/c++/7/variant:1255:23: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = wasm::RandomLattice::getBottom() const::<lambda(const auto:16&)>; _Variants = {wasm::RandomLattice::L&}]'
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:930:29: required from here
/usr/include/c++/7/variant:711:49: error: '_S_apply' was not declared in this scope
static constexpr auto _S_vtable = _S_apply();
~~~~~~~~^~
/usr/include/c++/7/variant:711:49: note: suggested alternative: '__expl'
static constexpr auto _S_vtable = _S_apply();
~~~~~~~~^~
__expl
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp: In member function 'wasm::RandomLattice::Element wasm::RandomLattice::getBottom() const':
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:929:20: error: could not convert 'std::visit<wasm::RandomLattice::getBottom() const::<lambda(const auto:16&)>, wasm::RandomLattice::L&>(<lambda closure object>wasm::RandomLattice::getBottom() const::<lambda(const auto:16&)>{}, (* &((const wasm::RandomLattice*)this)->wasm::RandomLattice::lattice.std::unique_ptr<wasm::RandomLattice::L>::operator*()))' from 'void' to 'wasm::RandomLattice::Element {aka wasm::RandomElement<wasm::RandomLattice>}'
return std::visit([](const auto& l) { return ElementImpl{l.getBottom()}; },
~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*lattice);
~~~~~~~~~
In file included from /root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:21:0:
/usr/include/c++/7/variant: In instantiation of 'struct std::variant_size<const wasm::RandomLattice::ElementImpl>':
/usr/include/c++/7/variant:97:29: required from 'constexpr const size_t std::variant_size_v<const wasm::RandomLattice::ElementImpl>'
/usr/include/c++/7/variant:702:10: required from 'struct std::__detail::__variant::__gen_vtable<wasm::analysis::LatticeComparison, wasm::RandomLattice::compare(const Element&, const Element&) const::<lambda(const auto:17&, const auto:18&, const auto:19&)>&&, wasm::RandomLattice::L&, const wasm::RandomLattice::ElementImpl&, const wasm::RandomLattice::ElementImpl&>'
/usr/include/c++/7/variant:1255:23: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = wasm::RandomLattice::compare(const Element&, const Element&) const::<lambda(const auto:17&, const auto:18&, const auto:19&)>; _Variants = {wasm::RandomLattice::L&, const wasm::RandomLattice::ElementImpl&, const wasm::RandomLattice::ElementImpl&}]'
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:949:7: required from here
/usr/include/c++/7/variant:84:12: error: invalid use of incomplete type 'struct std::variant_size<wasm::RandomLattice::ElementImpl>'
struct variant_size<const _Variant> : variant_size<_Variant> {};
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/7/variant:81:12: note: declaration of 'struct std::variant_size<wasm::RandomLattice::ElementImpl>'
struct variant_size;
^~~~~~~~~~~~
/usr/include/c++/7/variant: In instantiation of 'constexpr const size_t std::variant_size_v<const wasm::RandomLattice::ElementImpl>':
/usr/include/c++/7/variant:702:10: required from 'struct std::__detail::__variant::__gen_vtable<wasm::analysis::LatticeComparison, wasm::RandomLattice::compare(const Element&, const Element&) const::<lambda(const auto:17&, const auto:18&, const auto:19&)>&&, wasm::RandomLattice::L&, const wasm::RandomLattice::ElementImpl&, const wasm::RandomLattice::ElementImpl&>'
/usr/include/c++/7/variant:1255:23: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = wasm::RandomLattice::compare(const Element&, const Element&) const::<lambda(const auto:17&, const auto:18&, const auto:19&)>; _Variants = {wasm::RandomLattice::L&, const wasm::RandomLattice::ElementImpl&, const wasm::RandomLattice::ElementImpl&}]'
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:949:7: required from here
/usr/include/c++/7/variant:97:29: error: 'value' is not a member of 'std::variant_size<const wasm::RandomLattice::ElementImpl>'
inline constexpr size_t variant_size_v = variant_size<_Variant>::value;
^~~~~~~~~~~~~~
/usr/include/c++/7/variant: In instantiation of 'constexpr const auto std::__detail::__variant::__gen_vtable<wasm::analysis::LatticeComparison, wasm::RandomLattice::compare(const Element&, const Element&) const::<lambda(const auto:17&, const auto:18&, const auto:19&)>&&, wasm::RandomLattice::L&, const wasm::RandomLattice::ElementImpl&, const wasm::RandomLattice::ElementImpl&>::_S_vtable':
/usr/include/c++/7/variant:711:29: required from 'struct std::__detail::__variant::__gen_vtable<wasm::analysis::LatticeComparison, wasm::RandomLattice::compare(const Element&, const Element&) const::<lambda(const auto:17&, const auto:18&, const auto:19&)>&&, wasm::RandomLattice::L&, const wasm::RandomLattice::ElementImpl&, const wasm::RandomLattice::ElementImpl&>'
/usr/include/c++/7/variant:1255:23: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = wasm::RandomLattice::compare(const Element&, const Element&) const::<lambda(const auto:17&, const auto:18&, const auto:19&)>; _Variants = {wasm::RandomLattice::L&, const wasm::RandomLattice::ElementImpl&, const wasm::RandomLattice::ElementImpl&}]'
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:949:7: required from here
/usr/include/c++/7/variant:711:49: error: '_S_apply' was not declared in this scope
static constexpr auto _S_vtable = _S_apply();
~~~~~~~~^~
/usr/include/c++/7/variant:711:49: note: suggested alternative: '__expl'
static constexpr auto _S_vtable = _S_apply();
~~~~~~~~^~
__expl
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp: In member function 'wasm::analysis::LatticeComparison wasm::RandomLattice::compare(const Element&, const Element&) const':
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:949:7: error: void value not ignored as it ought to be
*b);
^
In file included from /root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:21:0:
/usr/include/c++/7/variant: In instantiation of 'constexpr const size_t std::variant_size_v<wasm::RandomLattice::ElementImpl>':
/usr/include/c++/7/variant:702:10: required from 'struct std::__detail::__variant::__gen_vtable<bool, wasm::RandomLattice::join(wasm::RandomLattice::Element&, const Element&) const::<lambda(const auto:20&, auto:21&, const auto:22&)>&&, wasm::RandomLattice::L&, wasm::RandomLattice::ElementImpl&, const wasm::RandomLattice::ElementImpl&>'
/usr/include/c++/7/variant:1255:23: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = wasm::RandomLattice::join(wasm::RandomLattice::Element&, const Element&) const::<lambda(const auto:20&, auto:21&, const auto:22&)>; _Variants = {wasm::RandomLattice::L&, wasm::RandomLattice::ElementImpl&, const wasm::RandomLattice::ElementImpl&}]'
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:965:7: required from here
/usr/include/c++/7/variant:97:29: error: incomplete type 'std::variant_size<wasm::RandomLattice::ElementImpl>' used in nested name specifier
inline constexpr size_t variant_size_v = variant_size<_Variant>::value;
^~~~~~~~~~~~~~
/usr/include/c++/7/variant: In instantiation of 'constexpr const auto std::__detail::__variant::__gen_vtable<bool, wasm::RandomLattice::join(wasm::RandomLattice::Element&, const Element&) const::<lambda(const auto:20&, auto:21&, const auto:22&)>&&, wasm::RandomLattice::L&, wasm::RandomLattice::ElementImpl&, const wasm::RandomLattice::ElementImpl&>::_S_vtable':
/usr/include/c++/7/variant:711:29: required from 'struct std::__detail::__variant::__gen_vtable<bool, wasm::RandomLattice::join(wasm::RandomLattice::Element&, const Element&) const::<lambda(const auto:20&, auto:21&, const auto:22&)>&&, wasm::RandomLattice::L&, wasm::RandomLattice::ElementImpl&, const wasm::RandomLattice::ElementImpl&>'
/usr/include/c++/7/variant:1255:23: required from 'constexpr decltype(auto) std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = wasm::RandomLattice::join(wasm::RandomLattice::Element&, const Element&) const::<lambda(const auto:20&, auto:21&, const auto:22&)>; _Variants = {wasm::RandomLattice::L&, wasm::RandomLattice::ElementImpl&, const wasm::RandomLattice::ElementImpl&}]'
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:965:7: required from here
/usr/include/c++/7/variant:711:49: error: '_S_apply' was not declared in this scope
static constexpr auto _S_vtable = _S_apply();
~~~~~~~~^~
/usr/include/c++/7/variant:711:49: note: suggested alternative: '__expl'
static constexpr auto _S_vtable = _S_apply();
~~~~~~~~^~
__expl
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp: In member function 'bool wasm::RandomLattice::join(wasm::RandomLattice::Element&, const Element&) const':
/root/project/binaryen/main/src/tools/wasm-fuzz-lattices.cpp:965:7: error: void value not ignored as it ought to be
*b);
^
[ 96%] Linking CXX executable ../../../bin/wasm-split
[ 96%] Built target wasm-split
[ 96%] Building CXX object test/gtest/CMakeFiles/binaryen-unittests.dir/dfa_minimization.cpp.o
At global scope:
cc1plus: warning: unrecognized command line option '-Wno-unknown-warning-option'
cc1plus: warning: unrecognized command line option '-Wno-implicit-int-float-conversion'
cc1plus: warning: unrecognized command line option '-Wno-dangling-pointer'
src/tools/CMakeFiles/wasm-fuzz-lattices.dir/build.make:134: recipe for target 'src/tools/CMakeFiles/wasm-fuzz-lattices.dir/wasm-fuzz-lattices.cpp.o' failed
make[2]: *** [src/tools/CMakeFiles/wasm-fuzz-lattices.dir/wasm-fuzz-lattices.cpp.o] Error 1
CMakeFiles/Makefile2:1020: recipe for target 'src/tools/CMakeFiles/wasm-fuzz-lattices.dir/all' failed
make[1]: *** [src/tools/CMakeFiles/wasm-fuzz-lattices.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
https://app.circleci.com/pipelines/github/emscripten-core/emsdk/2084/workflows/2e280ca8-1c22-435f-b602-58142371adba/jobs/12495
Some kind of issue with std::variant: