Opened 6 months ago

Closed 4 months ago

#69657 closed defect (fixed)

onetbb @2021.11.0: error: no viable conversion

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: mohd-akram (Mohamed Akram)
Priority: Normal Milestone:
Component: ports Version: 2.9.1
Keywords: yosemite elcapitan Cc:
Port: onetbb

Description

Building onetbb succeeds on macOS 10.12 and later and on OS X 10.9 and earlier but not on 10.10 or 10.11:

10.10:

/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_devel_onetbb/onetbb/work/oneTBB-2021.11.0/src/tbb/threading_control.cpp:68:20: error: no viable conversion from 'unique_ptr<tbb::detail::r1::tcm_adaptor, [...]>' to 'unique_ptr<tbb::detail::r1::permit_manager, [...]>'
            return tcm;
                   ^~~
/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:2487:29: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'std::__1::unique_ptr<tbb::detail::r1::tcm_adaptor, tbb::detail::r1::cache_aligned_deleter>' to 'const std::__1::unique_ptr<tbb::detail::r1::permit_manager, tbb::detail::r1::cache_aligned_deleter> &' for 1st argument
class _LIBCPP_TYPE_VIS_ONLY unique_ptr
                            ^
/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:2516:49: note: candidate constructor not viable: no known conversion from 'std::__1::unique_ptr<tbb::detail::r1::tcm_adaptor, tbb::detail::r1::cache_aligned_deleter>' to 'nullptr_t' for 1st argument
    _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR unique_ptr(nullptr_t) _NOEXCEPT
                                                ^
/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:2543:31: note: candidate constructor not viable: no known conversion from 'std::__1::unique_ptr<tbb::detail::r1::tcm_adaptor, tbb::detail::r1::cache_aligned_deleter>' to 'std::__1::unique_ptr<tbb::detail::r1::permit_manager, tbb::detail::r1::cache_aligned_deleter> &&' for 1st argument
    _LIBCPP_INLINE_VISIBILITY unique_ptr(unique_ptr&& __u) _NOEXCEPT
                              ^
/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:2547:9: note: candidate constructor [with _Up = tbb::detail::r1::tcm_adaptor, _Ep = tbb::detail::r1::cache_aligned_deleter] not viable: no known conversion from 'std::__1::unique_ptr<tbb::detail::r1::tcm_adaptor, tbb::detail::r1::cache_aligned_deleter>' to 'unique_ptr<tbb::detail::r1::tcm_adaptor, tbb::detail::r1::cache_aligned_deleter> &&' for 1st argument
        unique_ptr(unique_ptr<_Up, _Ep>&& __u,
        ^
/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:2562:35: note: candidate template ignored: could not match 'auto_ptr' against 'unique_ptr'
        _LIBCPP_INLINE_VISIBILITY unique_ptr(auto_ptr<_Up>&& __p,
                                  ^
1 error generated.

10.11:

/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_devel_onetbb/onetbb/work/oneTBB-2021.11.0/src/tbb/threading_control.cpp:68:20: error: no viable conversion from returned value of type 'unique_ptr<tbb::detail::r1::tcm_adaptor, [...]>' to function return type 'unique_ptr<tbb::detail::r1::permit_manager, [...]>'
            return tcm;
                   ^~~
/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:2553:29: note: candidate constructor (the implicit copy constructor) not viable: no known conversion from 'std::__1::unique_ptr<tbb::detail::r1::tcm_adaptor, tbb::detail::r1::cache_aligned_deleter>' to 'const std::__1::unique_ptr<tbb::detail::r1::permit_manager, tbb::detail::r1::cache_aligned_deleter> &' for 1st argument
class _LIBCPP_TYPE_VIS_ONLY unique_ptr
                            ^
/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:2582:49: note: candidate constructor not viable: no known conversion from 'std::__1::unique_ptr<tbb::detail::r1::tcm_adaptor, tbb::detail::r1::cache_aligned_deleter>' to 'nullptr_t' for 1st argument
    _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR unique_ptr(nullptr_t) _NOEXCEPT
                                                ^
/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:2609:31: note: candidate constructor not viable: no known conversion from 'std::__1::unique_ptr<tbb::detail::r1::tcm_adaptor, tbb::detail::r1::cache_aligned_deleter>' to 'std::__1::unique_ptr<tbb::detail::r1::permit_manager, tbb::detail::r1::cache_aligned_deleter> &&' for 1st argument
    _LIBCPP_INLINE_VISIBILITY unique_ptr(unique_ptr&& __u) _NOEXCEPT
                              ^
/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:2613:9: note: candidate constructor [with _Up = tbb::detail::r1::tcm_adaptor, _Ep = tbb::detail::r1::cache_aligned_deleter] not viable: no known conversion from 'std::__1::unique_ptr<tbb::detail::r1::tcm_adaptor, tbb::detail::r1::cache_aligned_deleter>' to 'unique_ptr<tbb::detail::r1::tcm_adaptor, tbb::detail::r1::cache_aligned_deleter> &&' for 1st argument
        unique_ptr(unique_ptr<_Up, _Ep>&& __u,
        ^
/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/memory:2628:35: note: candidate template ignored: could not match 'auto_ptr' against 'unique_ptr'
        _LIBCPP_INLINE_VISIBILITY unique_ptr(auto_ptr<_Up>&& __p,
                                  ^
1 error generated.

Change History (2)

comment:1 in reply to:  description Changed 4 months ago by barracuda156

Replying to ryandesign:

I have no way to test it, but the only thing relevant which I can see is compiler.blacklist-append {clang < 700} in OneTBB portfile. There is nothing in the patches which can affect 10.10–10.11 specifically. I guess we just need to adjust the compiler choice.

comment:2 Changed 4 months ago by barracuda156

Resolution: fixed
Status: assignedclosed

In aa3419a2129fcd6e7ac7c67c88a291c03a1a18c7/macports-ports (master):

onetbb: fix for 10.10–10.11

Closes: #69657

Note: See TracTickets for help on using tickets.