NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
lib/49989: libc++ fails to build with g++ 5.1 due to libpthread volatiles
>Number: 49989
>Category: lib
>Synopsis: libc++ fails to build with g++ 5.1 due to libpthread volatiles
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: lib-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sat Jun 20 15:05:00 +0000 2015
>Originator: Antti Kantee
>Release: some future NetBSD
>Organization:
>Environment:
>Description:
libc++ fails to build with g++ 5.1 due to the following types of errors:
=== snip ===
libc++/dist/libcxx/include/__mutex_base:32:69: error: temporary of non-literal type '__pthread_mutex_st' in a constant expression
constexpr mutex() _NOEXCEPT : __m_(PTHREAD_MUTEX_INITIALIZER) {}
[...]
include/pthread_types.h:101:8: note: '__pthread_mutex_st' is not literal because:
struct __pthread_mutex_st {
^
include/pthread_types.h:103:17: note: non-static data member '__pthread_mutex_st::ptm_errorcheck' has volatile type
pthread_spin_t ptm_errorcheck;
=== snip ===
For a full build log including the full g++ error output, see:
https://gist.githubusercontent.com/anonymous/566a26a930fa2d902894/raw/6824c3c138580bff415caddec3bdf1062d560a31/build.log
(via rumprun issue #33)
>How-To-Repeat:
On a(n x86) system with g++ 5.1, git clone repo.rumpkernel.org/rumprun and run "./build-rr.sh hw".
>Fix:
No idea, I don't speak C++. Not sure if this is a libpthread problem or a libc++ problem. (it might even be a g++ problem, in which case it's not a NetBSD bug and this report can be closed, but my money is on the first two and hence submitting it here)
Home |
Main Index |
Thread Index |
Old Index