Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 12 Jul 2018 23:21:47 +0000 (UTC)
From:      Jan Beich <jbeich@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r474542 - head/science/pulseview
Message-ID:  <201807122321.w6CNLlei055846@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jbeich
Date: Thu Jul 12 23:21:47 2018
New Revision: 474542
URL: https://svnweb.freebsd.org/changeset/ports/474542

Log:
  science/pulseview: unbreak with boost 1.68 on FreeBSD 10.*
  
  After https://github.com/boostorg/multiprecision/commit/3cedeeab3048
  building with Clang 3.4.1 fails like the following:
  
  In file included from pv/views/trace/view.cpp:26:
  In file included from /usr/include/c++/v1/algorithm:628:
  In file included from /usr/include/c++/v1/memory:607:
  /usr/include/c++/v1/tuple:187:73: error: reference to type 'const boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0>' requires an initializer
               _NOEXCEPT_(is_nothrow_default_constructible<_Hp>::value) : value()
                                                                          ^
  /usr/include/c++/v1/type_traits:2359:44: note: in instantiation of member function 'std::__1::__tuple_leaf<1, const boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &, false>::__tuple_leaf' requested here
  typename __select_2nd<decltype(_VSTD::move(_Tp(_VSTD::declval<_Args>()...))), true_type>::type
                                             ^
  /usr/include/c++/v1/type_traits:2360:1: note: while substituting deduced template arguments into function template '__is_constructible_test' [with _Tp = std::__1::__tuple_leaf<1, const boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &, false>, _Args = <>]
  __is_constructible_test(_Tp&&, _Args&& ...);
  ^
  /usr/include/c++/v1/type_traits:2419:14: note: in instantiation of template class 'std::__1::__libcpp_is_constructible<false, std::__1::__tuple_leaf<1, const boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &, false>>' requested here
      : public __libcpp_is_constructible<is_scalar<_Tp>::value || is_reference<_Tp>::value,
               ^
  /usr/include/c++/v1/type_traits:2445:14: note: in instantiation of template class 'std::__1::__is_constructible_void_check<false, std::__1::__tuple_leaf<1, const boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &, false>>' requested here
      : public __is_constructible_void_check<__contains_void<_Tp, _Args...>::value
               ^
  /usr/include/c++/v1/type_traits:2653:14: note: in instantiation of template class 'std::__1::is_constructible<std::__1::__tuple_leaf<1, const boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &, false>>' requested here
      : public is_constructible<_Tp>
               ^
  /usr/local/include/boost/multiprecision/number.hpp:645:119: note: (skipping 4 contexts in backtrace; use -ftemplate-backtrace-limit=0 to see all)
     template <class T, class = typename boost::disable_if_c<std::is_constructible<T, self_type const&>::value || !std::is_default_constructible<T>::value, T>::type>
                                                                                                                        ^
  /usr/include/c++/v1/tuple:882:12: note: in instantiation of function template specialization 'std::__1::tuple<pv::views::trace::View &, const boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &, QString &&>::tuple<pv::views::trace::View &, const boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &, QString, false>' requested here
      return tuple<_Tp&&...>(_VSTD::forward<_Tp>(__t)...);
             ^
  /usr/include/c++/v1/memory:3705:27: note: in instantiation of function template specialization 'std::__1::forward_as_tuple<pv::views::trace::View &, const boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &, QString>' requested here
                     _VSTD::forward_as_tuple(_VSTD::forward<_Args>(__args)...)) {}
                            ^
  /usr/include/c++/v1/memory:4280:26: note: in instantiation of function template specialization 'std::__1::__shared_ptr_emplace<pv::views::trace::Flag, std::__1::allocator<pv::views::trace::Flag> >::__shared_ptr_emplace<pv::views::trace::View &, const boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &, QString>' requested here
      ::new(__hold2.get()) _CntrlBlk(__a2, _VSTD::forward<_Args>(__args)...);
                           ^
  /usr/include/c++/v1/memory:4644:29: note: in instantiation of function template specialization 'std::__1::shared_ptr<pv::views::trace::Flag>::make_shared<pv::views::trace::View &, const boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &, QString>' requested here
      return shared_ptr<_Tp>::make_shared(_VSTD::forward<_Args>(__args)...);
                              ^
  pv/views/trace/view.cpp:641:19: note: in instantiation of function template specialization 'std::__1::make_shared<pv::views::trace::Flag, pv::views::trace::View &, const boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &, QString>' requested here
          flags_.push_back(make_shared<Flag>(*this, time,
                           ^
  In file included from pv/views/trace/view.cpp:26:
  In file included from /usr/include/c++/v1/algorithm:628:
  In file included from /usr/include/c++/v1/memory:607:
  /usr/include/c++/v1/tuple:188:9: error: static_assert failed "Attempted to default construct a reference element in a tuple"
         {static_assert(!is_reference<_Hp>::value,
          ^             ~~~~~~~~~~~~~~~~~~~~~~~~~
  /usr/include/c++/v1/tuple:187:73: error: reference to type 'boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0>' requires an initializer
               _NOEXCEPT_(is_nothrow_default_constructible<_Hp>::value) : value()
                                                                          ^
  /usr/include/c++/v1/type_traits:2359:44: note: in instantiation of member function 'std::__1::__tuple_leaf<1, boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &, false>::__tuple_leaf' requested here
  typename __select_2nd<decltype(_VSTD::move(_Tp(_VSTD::declval<_Args>()...))), true_type>::type
                                             ^
  /usr/include/c++/v1/type_traits:2360:1: note: while substituting deduced template arguments into function template '__is_constructible_test' [with _Tp = std::__1::__tuple_leaf<1, boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &, false>, _Args = <>]
  __is_constructible_test(_Tp&&, _Args&& ...);
  ^
  /usr/include/c++/v1/type_traits:2419:14: note: in instantiation of template class 'std::__1::__libcpp_is_constructible<false, std::__1::__tuple_leaf<1, boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &, false>>' requested here
      : public __libcpp_is_constructible<is_scalar<_Tp>::value || is_reference<_Tp>::value,
               ^
  /usr/include/c++/v1/type_traits:2445:14: note: in instantiation of template class 'std::__1::__is_constructible_void_check<false, std::__1::__tuple_leaf<1, boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &, false>>' requested here
      : public __is_constructible_void_check<__contains_void<_Tp, _Args...>::value
               ^
  /usr/include/c++/v1/type_traits:2653:14: note: in instantiation of template class 'std::__1::is_constructible<std::__1::__tuple_leaf<1, boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &, false>>' requested here
      : public is_constructible<_Tp>
               ^
  /usr/local/include/boost/multiprecision/number.hpp:645:119: note: (skipping 4 contexts in backtrace; use -ftemplate-backtrace-limit=0 to see all)
     template <class T, class = typename boost::disable_if_c<std::is_constructible<T, self_type const&>::value || !std::is_default_constructible<T>::value, T>::type>
                                                                                                                        ^
  /usr/include/c++/v1/tuple:882:12: note: in instantiation of member function 'std::__1::tuple<pv::views::trace::View &, boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &>::tuple' requested here
      return tuple<_Tp&&...>(_VSTD::forward<_Tp>(__t)...);
             ^
  /usr/include/c++/v1/memory:3705:27: note: in instantiation of function template specialization 'std::__1::forward_as_tuple<pv::views::trace::View &, boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &>' requested here
                     _VSTD::forward_as_tuple(_VSTD::forward<_Args>(__args)...)) {}
                            ^
  /usr/include/c++/v1/memory:4280:26: note: in instantiation of function template specialization 'std::__1::__shared_ptr_emplace<pv::views::trace::TriggerMarker, std::__1::allocator<pv::views::trace::TriggerMarker> >::__shared_ptr_emplace<pv::views::trace::View &, boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &>' requested here
      ::new(__hold2.get()) _CntrlBlk(__a2, _VSTD::forward<_Args>(__args)...);
                           ^
  /usr/include/c++/v1/memory:4644:29: note: in instantiation of function template specialization 'std::__1::shared_ptr<pv::views::trace::TriggerMarker>::make_shared<pv::views::trace::View &, boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &>' requested here
      return shared_ptr<_Tp>::make_shared(_VSTD::forward<_Args>(__args)...);
                              ^
  pv/views/trace/view.cpp:696:29: note: in instantiation of function template specialization 'std::__1::make_shared<pv::views::trace::TriggerMarker, pv::views::trace::View &, boost::multiprecision::number<boost::multiprecision::backends::cpp_dec_float<24, int, void>, 0> &>' requested here
          trigger_markers_.push_back(make_shared<TriggerMarker>(*this, location));
                                     ^
  In file included from pv/views/trace/view.cpp:26:
  In file included from /usr/include/c++/v1/algorithm:628:
  In file included from /usr/include/c++/v1/memory:607:
  /usr/include/c++/v1/tuple:188:9: error: static_assert failed "Attempted to default construct a reference element in a tuple"
         {static_assert(!is_reference<_Hp>::value,
          ^             ~~~~~~~~~~~~~~~~~~~~~~~~~
  
  PR:		229569

Modified:
  head/science/pulseview/Makefile   (contents, props changed)

Modified: head/science/pulseview/Makefile
==============================================================================
--- head/science/pulseview/Makefile	Thu Jul 12 22:53:03 2018	(r474541)
+++ head/science/pulseview/Makefile	Thu Jul 12 23:21:47 2018	(r474542)
@@ -17,7 +17,7 @@ LIB_DEPENDS=	libboost_thread.so:devel/boost-libs \
 		libsigrok.so:devel/libsigrok \
 		libsigrokdecode.so:devel/libsigrokdecode
 
-USES=		cmake desktop-file-utils pkgconfig qt:5
+USES=		cmake compiler:c++14-lang desktop-file-utils pkgconfig qt:5
 USE_GNOME=	glibmm glib20 libsigc++20
 USE_QT=		buildtools core gui qmake_build svg widgets
 CMAKE_ARGS+=	-DCMAKE_INSTALL_MANDIR:PATH=${MANPREFIX}/man \



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201807122321.w6CNLlei055846>