NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

lib/51139: C++11 std::call_once() broken on NetBSD

>Number:         51139
>Category:       lib
>Synopsis:       C++11 std::call_once() broken on NetBSD
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    lib-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun May 15 01:10:00 +0000 2016
>Originator:     Kamil Rytarowski
>Release:        7.99.28 and 7.0
NetBSD chieftec 7.99.28 NetBSD 7.99.28 (GENERIC) #0: Wed Apr 27 05:36:02 CEST 2016  root@chieftec:/tmp/netbsd-tmp/sys/arch/amd64/compile/GENERIC amd64


NetBSD nb7_amd64 7.0 NetBSD 7.0 (GENERIC.201509250726Z) amd64
The LLVM+Clang+LLDB buildbot has caught quickly a bug on NetBSD with std::call_once() in C++11.

It happened that std::call_once() as defined in C++11 doesn't work in 7.0 neither in HEAD (7.99.28).
Build the following example and try to run.

#include <iostream>
#include <thread>
#include <mutex>
std::once_flag flag;
void simple_do_once()
    std::call_once(flag, [](){ std::cout << "Simple example: called once\n"; });
int main()
    std::thread st1(simple_do_once);

g++ -std=c++11 -lpthread test.cpp


not investigated

Home | Main Index | Thread Index | Old Index