Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Jun 2021 05:19:20 GMT
From:      Jan Beich <jbeich@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-branches@FreeBSD.org
Subject:   git: 0f5c16519b9e - 2021Q2 - emulators/rpcs3: unbreak on -CURRENT after src@95aa617e4bf0
Message-ID:  <202106070519.1575JK9h032652@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch 2021Q2 has been updated by jbeich:

URL: https://cgit.FreeBSD.org/ports/commit/?id=0f5c16519b9ebf74ac800c93449a5895998a83e2

commit 0f5c16519b9ebf74ac800c93449a5895998a83e2
Author:     Jan Beich <jbeich@FreeBSD.org>
AuthorDate: 2021-06-07 05:06:25 +0000
Commit:     Jan Beich <jbeich@FreeBSD.org>
CommitDate: 2021-06-07 05:19:10 +0000

    emulators/rpcs3: unbreak on -CURRENT after src@95aa617e4bf0
    
    In file included from rpcs3/Emu/Cell/Modules/cellNetCtl.cpp:1:
    In file included from rpcs3/stdafx.h:7:
    In file included from Utilities/File.h:4:
    rpcs3/util/shared_ptr.hpp:10:17: error: constexpr variable 'same_ptr_implicit_v<thread_future, thread_future_t<true, netstart_hack &, int>>' must be initialized by a constant expression
            constexpr bool same_ptr_implicit_v = std::is_convertible_v<const volatile From*, const volatile To*> ? is_same_ptr<From, To>() : false;
                           ^                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    rpcs3/util/shared_ptr.hpp:396:34: note: in instantiation of variable template specialization 'stx::same_ptr_implicit_v<thread_future, thread_future_t<true, netstart_hack &, int>>' requested here
                    template <typename U> requires same_ptr_implicit_v<T, U>
                                                   ^
    rpcs3/util/shared_ptr.hpp:396:34: note: while substituting template arguments into constraint expression here
                    template <typename U> requires same_ptr_implicit_v<T, U>
                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~
    Utilities/Thread.h:567:18: note: while checking constraint satisfaction for template 'shared_ptr<thread_future_t<true, netstart_hack &, int>>' required here
                                    thread::push(std::move(target));
                                                 ^~~
    Utilities/Thread.h:567:18: note: in instantiation of function template specialization 'stx::shared_ptr<thread_future>::shared_ptr<thread_future_t<true, netstart_hack &, int>>' requested here
    rpcs3/Emu/Cell/Modules/cellNetCtl.cpp:264:43: note: in instantiation of function template specialization 'named_thread<netstart_hack>::operator()<true, int>' requested here
            g_fxo->get<named_thread<netstart_hack>>()(0);
                                                     ^
    rpcs3/util/types.hpp:1049:16: note: non-constexpr function 'allocate' cannot be used in a constant expression
                                    X* ptr = a.allocate(1);
                                               ^
    rpcs3/util/shared_ptr.hpp:10:105: note: in call to 'is_same_ptr()'
            constexpr bool same_ptr_implicit_v = std::is_convertible_v<const volatile From*, const volatile To*> ? is_same_ptr<From, To>() : false;
                                                                                                                   ^
    /usr/include/c++/v1/memory:1783:66: note: declared here
        _LIBCPP_NODISCARD_AFTER_CXX17 _LIBCPP_INLINE_VISIBILITY _Tp* allocate(size_t __n)
                                                                     ^
    In file included from rpcs3/Emu/Cell/Modules/cellNetCtl.cpp:1:
    In file included from rpcs3/stdafx.h:7:
    In file included from Utilities/File.h:4:
    rpcs3/util/shared_ptr.hpp:396:34: error: substitution into constraint expression resulted in a non-constant expression
                    template <typename U> requires same_ptr_implicit_v<T, U>
                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~
    Utilities/Thread.h:567:18: note: while checking constraint satisfaction for template 'shared_ptr<thread_future_t<true, netstart_hack &, int>>' required here
                                    thread::push(std::move(target));
                                                 ^~~
    Utilities/Thread.h:567:18: note: in instantiation of function template specialization 'stx::shared_ptr<thread_future>::shared_ptr<thread_future_t<true, netstart_hack &, int>>' requested here
    rpcs3/Emu/Cell/Modules/cellNetCtl.cpp:264:43: note: in instantiation of function template specialization 'named_thread<netstart_hack>::operator()<true, int>' requested here
            g_fxo->get<named_thread<netstart_hack>>()(0);
                                                     ^
    rpcs3/util/shared_ptr.hpp:396:34: note: initializer of 'same_ptr_implicit_v<thread_future, thread_future_t<true, netstart_hack &, int>>' is not a constant expression
                    template <typename U> requires same_ptr_implicit_v<T, U>
                                                   ^
    rpcs3/util/shared_ptr.hpp:10:17: note: declared here
            constexpr bool same_ptr_implicit_v = std::is_convertible_v<const volatile From*, const volatile To*> ? is_same_ptr<From, To>() : false;
                           ^
    In file included from rpcs3/Emu/Cell/Modules/cellNetCtl.cpp:3:
    In file included from rpcs3/Emu/Cell/PPUModule.h:3:
    In file included from rpcs3/Emu/Cell/PPUFunction.h:3:
    In file included from rpcs3/Emu/Cell/PPUThread.h:3:
    In file included from rpcs3/Emu/CPU/CPUThread.h:3:
    Utilities/Thread.h:567:18: error: no viable conversion from 'typename remove_reference<single_ptr<thread_future_t<true, netstart_hack &, int>> &>::type' (aka 'stx::single_ptr<thread_future_t<true, netstart_hack &, int>>') to 'shared_ptr<thread_future>'
                                    thread::push(std::move(target));
                                                 ^~~~~~~~~~~~~~~~~
    rpcs3/Emu/Cell/Modules/cellNetCtl.cpp:264:43: note: in instantiation of function template specialization 'named_thread<netstart_hack>::operator()<true, int>' requested here
            g_fxo->get<named_thread<netstart_hack>>()(0);
                                                     ^
    rpcs3/util/shared_ptr.hpp:356:3: note: candidate constructor not viable: no known conversion from 'typename remove_reference<single_ptr<thread_future_t<true, netstart_hack &, int>> &>::type' (aka 'stx::single_ptr<thread_future_t<true, netstart_hack &, int>>') to 'const stx::shared_ptr<thread_future> &' for 1st argument
                    shared_ptr(const shared_ptr& r) noexcept
                    ^
    rpcs3/util/shared_ptr.hpp:364:34: note: candidate constructor not viable: no known conversion from 'typename remove_reference<single_ptr<thread_future_t<true, netstart_hack &, int>> &>::type' (aka 'stx::single_ptr<thread_future_t<true, netstart_hack &, int>>') to 'std::nullptr_t' (aka 'nullptr_t') for 1st argument
                    [[deprecated("Use null_ptr")]] shared_ptr(std::nullptr_t) = delete;
                                                   ^
    rpcs3/util/shared_ptr.hpp:383:3: note: candidate constructor not viable: no known conversion from 'typename remove_reference<single_ptr<thread_future_t<true, netstart_hack &, int>> &>::type' (aka 'stx::single_ptr<thread_future_t<true, netstart_hack &, int>>') to 'stx::shared_ptr<thread_future> &&' for 1st argument
                    shared_ptr(shared_ptr&& r) noexcept
                    ^
    rpcs3/util/shared_ptr.hpp:376:3: note: candidate template ignored: could not match 'shared_ptr' against 'single_ptr'
                    shared_ptr(const shared_ptr<U>& r) noexcept
                    ^
    rpcs3/util/shared_ptr.hpp:390:3: note: candidate template ignored: could not match 'shared_ptr' against 'single_ptr'
                    shared_ptr(shared_ptr<U>&& r) noexcept
                    ^
    rpcs3/util/shared_ptr.hpp:397:3: note: candidate template ignored: failed template argument deduction
                    shared_ptr(single_ptr<U>&& r) noexcept
                    ^
    rpcs3/util/shared_ptr.hpp:367:12: note: explicit constructor is not a candidate
                    explicit shared_ptr(T* _this) noexcept
                             ^
    rpcs3/util/shared_ptr.hpp:200:3: note: candidate function
                    operator element_type*() const noexcept
                    ^
    rpcs3/util/shared_ptr.hpp:212:12: note: explicit conversion function is not a candidate
                    explicit operator single_ptr<U>() && noexcept
                             ^
    Utilities/Thread.h:187:37: note: passing argument to parameter here
            void push(shared_ptr<thread_future>);
                                               ^
    
    Reported by:    pkg-fallout
    
    (cherry picked from commit e8aa9591b338dee8335d4d4ccf088871bdb78b54)
---
 emulators/rpcs3/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/emulators/rpcs3/Makefile b/emulators/rpcs3/Makefile
index 763772e4354a..2699dccc2c69 100644
--- a/emulators/rpcs3/Makefile
+++ b/emulators/rpcs3/Makefile
@@ -90,7 +90,7 @@ CXX=		clang++${LLVM_DEFAULT}
 CPP=		clang-cpp${LLVM_DEFAULT}
 
 # XXX Drop after FreeBSD 12.2 EOL
-.if make(makesum) || (!exists(/usr/include/c++/v1/concepts) && exists(/usr/lib/libc++.so))
+.if make(makesum) || (!exists(/usr/include/c++/v1/__bits) && exists(/usr/lib/libc++.so))
 MASTER_SITES+=	https://github.com/llvm/llvm-project/releases/download/llvmorg-${LLVM_VER}/:libcxx
 DISTFILES+=	libcxx-${LLVM_VER}.src.tar.xz:libcxx
 CXXFLAGS+=	-nostdinc++ -D_LIBCPP_HAS_NO_VENDOR_AVAILABILITY_ANNOTATIONS -isystem${WRKDIR}/libcxx-${LLVM_VER}.src/include



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