Re: [patch] libstdc++/70503 Ensure std::thread helpers have internal linkage

2016-04-07 Thread Jonathan Wakely
On 07/04/16 15:42 +0200, Jakub Jelinek wrote: Or perhaps instead change the test, so that instead of testing for undefined symbols it provides some definition of those 2 symbols and makes sure libstdc++.a(thread.o) is linked in too (such as using std::thread::detach or similar somewhere). Then in

Re: [patch] libstdc++/70503 Ensure std::thread helpers have internal linkage

2016-04-07 Thread Jakub Jelinek
On Thu, Apr 07, 2016 at 02:34:51PM +0100, Jonathan Wakely wrote: > On 07/04/16 15:27 +0200, Tom de Vries wrote: > >FYI, this testcase fails for me as follows: > >... > >/usr/bin/ld: Dwarf Error: found dwarf version '4', this reader only > >handles version 2 and 3 information.^M > >/tmp/ccMBMHB5.o:

Re: [patch] libstdc++/70503 Ensure std::thread helpers have internal linkage

2016-04-07 Thread Jonathan Wakely
On 07/04/16 15:27 +0200, Tom de Vries wrote: Hi, FYI, this testcase fails for me as follows: ... /usr/bin/ld: Dwarf Error: found dwarf version '4', this reader only handles version 2 and 3 information.^M /tmp/ccMBMHB5.o: In function `main':^M 70503.cc:(.text.startup.main+0x5): undefined refere

Re: [patch] libstdc++/70503 Ensure std::thread helpers have internal linkage

2016-04-07 Thread Tom de Vries
Hi, FYI, this testcase fails for me as follows: ... /usr/bin/ld: Dwarf Error: found dwarf version '4', this reader only handles version 2 and 3 information.^M /tmp/ccMBMHB5.o: In function `main':^M 70503.cc:(.text.startup.main+0x5): undefined reference to `execute_native_thread_routine'^M /usr

Re: [patch] libstdc++/70503 Ensure std::thread helpers have internal linkage

2016-04-05 Thread Jonathan Wakely
On 05/04/16 14:37 +0100, Jonathan Wakely wrote: Ensure std::thread helpers have internal linkage PR libstdc++/70503 * src/c++11/thread.cc (execute_native_thread_routine, execute_native_thread_routine_compat): Give internal linkage. * testsuite/30_threads/thread

[patch] libstdc++/70503 Ensure std::thread helpers have internal linkage

2016-04-05 Thread Jonathan Wakely
This makes the execute_native_thread_routine* helpers 'static' rather than using an unnamed namespace, because the latter doesn't give them static linkage due to them being extern "C". Tested x86_64-linux, committed to trunk. Backports to gcc-5 and gcc-4.9 to follow soon. commit 84538059d9d8608c