Skip to content

Commit 1fceaeb

Browse files
committed
Merge branch 'develop' of https://github.com/eldiener/thread into cppbuilder
2 parents 30f0ec4 + 49ece35 commit 1fceaeb

38 files changed

Lines changed: 308 additions & 318 deletions

.travis.yml

Lines changed: 191 additions & 253 deletions
Large diffs are not rendered by default.

appveyor.yml

Lines changed: 39 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -13,39 +13,50 @@ branches:
1313
- develop
1414
- /feature\/.*/
1515

16+
image: Visual Studio 2015
17+
1618
environment:
1719
matrix:
18-
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
19-
# TOOLSET: msvc-9.0,msvc-10.0,msvc-11.0,msvc-12.0
20-
TOOLSET: msvc-12.0
21-
SELF_CONTAINED_HEADER_TESTS: 1
22-
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
23-
TOOLSET: msvc-14.0
20+
21+
- TOOLSET: msvc-12.0
22+
VARIANT: release
23+
24+
- TOOLSET: msvc-14.0
2425
ADDRMD: 32
25-
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
26-
TOOLSET: msvc-14.1
26+
VARIANT: debug
27+
28+
- TOOLSET: msvc-14.1
29+
ADDRMD: 64
30+
VARIANT: release
31+
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
32+
33+
- TOOLSET: msvc-14.2
2734
CXXSTD: 17
2835
ADDRMD: 64
29-
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
30-
ADDPATH: C:\cygwin\bin;
31-
TOOLSET: gcc
32-
CXXSTD: 14
33-
SELF_CONTAINED_HEADER_TESTS: 1
34-
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
35-
ADDPATH: C:\cygwin64\bin;
36-
TOOLSET: gcc
37-
CXXSTD: 14
38-
SELF_CONTAINED_HEADER_TESTS: 1
39-
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
40-
ADDPATH: C:\mingw\bin;
36+
VARIANT: debug
37+
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
38+
39+
- ADDPATH: C:\cygwin\bin;
4140
TOOLSET: gcc
42-
CXXSTD: 14
43-
SELF_CONTAINED_HEADER_TESTS: 1
44-
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
45-
ADDPATH: C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin;
41+
VARIANT: release
42+
43+
- ADDPATH: C:\mingw\bin;
4644
TOOLSET: gcc
47-
CXXSTD: 14
48-
SELF_CONTAINED_HEADER_TESTS: 1
45+
VARIANT: debug
46+
47+
# The following configurations fail with
48+
# ./boost/thread/detail/invoke.hpp:101:43: internal compiler error: in gimplify_expr, at gimplify.c:12039
49+
# https://sourceforge.net/p/mingw-w64/bugs/694/
50+
#
51+
# - ADDPATH: C:\cygwin64\bin;
52+
# TOOLSET: gcc
53+
# VARIANT: debug
54+
# - ADDPATH: C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin;
55+
# TOOLSET: gcc
56+
# VARIANT: debug
57+
# - ADDPATH: C:\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bin;
58+
# TOOLSET: gcc
59+
# VARIANT: debug,release
4960

5061
install:
5162
- set GIT_FETCH_JOBS=8
@@ -67,7 +78,7 @@ build: off
6778

6879
test_script:
6980
- PATH=%ADDPATH%%PATH%
70-
- if "%SELF_CONTAINED_HEADER_TESTS%" == "" set BOOST_THREAD_TEST_WITHOUT_SELF_CONTAINED_HEADER_TESTS=1
7181
- if not "%CXXSTD%" == "" set CXXSTD=cxxstd=%CXXSTD%
7282
- if not "%ADDRMD%" == "" set ADDRMD=address-model=%ADDRMD%
73-
- b2 -j %NUMBER_OF_PROCESSORS% --abbreviate-paths libs/thread/test toolset=%TOOLSET% %CXXSTD% %ADDRMD% variant=debug,release
83+
- if not "%VARIANT%" == "" set VARIANT=variant=%VARIANT%
84+
- b2 -j2 --abbreviate-paths libs/thread/test toolset=%TOOLSET% %CXXSTD% %ADDRMD% %VARIANT%

example/thread_guard.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ struct func
2020
int& i;
2121

2222
func(int& i_):i(i_){}
23+
func(func const& other):i(other.i){}
2324

2425
void operator()()
2526
{

include/boost/thread/concurrent_queues/deque_adaptor.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ namespace detail
148148
template <class Q, class T,
149149
#if ! defined BOOST_NO_CXX11_RVALUE_REFERENCES
150150
#if defined __GNUC__ && ! defined __clang__
151-
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
151+
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 7) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
152152
bool Copyable = is_copy_constructible<T>::value,
153153
bool Movable = true
154154
#else

include/boost/thread/concurrent_queues/deque_base.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ namespace detail
140140
template <class T, class ST,
141141
#if ! defined BOOST_NO_CXX11_RVALUE_REFERENCES
142142
#if defined __GNUC__ && ! defined __clang__
143-
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
143+
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 7) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
144144
bool Copyable = is_copy_constructible<T>::value,
145145
bool Movable = true
146146
#else

include/boost/thread/concurrent_queues/detail/sync_deque_base.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
//
1212
//////////////////////////////////////////////////////////////////////////////
1313

14-
#include <boost/bind.hpp>
14+
#include <boost/bind/bind.hpp>
1515

1616
#include <boost/thread/detail/config.hpp>
1717
#include <boost/thread/condition_variable.hpp>

include/boost/thread/concurrent_queues/detail/sync_queue_base.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
//
1212
//////////////////////////////////////////////////////////////////////////////
1313

14-
#include <boost/bind.hpp>
14+
#include <boost/bind/bind.hpp>
1515

1616
#include <boost/thread/detail/config.hpp>
1717
#include <boost/thread/condition_variable.hpp>

include/boost/thread/concurrent_queues/queue_adaptor.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ namespace detail
148148
template <class Q, class T,
149149
#if ! defined BOOST_NO_CXX11_RVALUE_REFERENCES
150150
#if defined __GNUC__ && ! defined __clang__
151-
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
151+
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 7) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
152152
bool Copyable = is_copy_constructible<T>::value,
153153
bool Movable = true
154154
#else

include/boost/thread/concurrent_queues/queue_base.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ namespace detail
140140
template <class T, class ST,
141141
#if ! defined BOOST_NO_CXX11_RVALUE_REFERENCES
142142
#if defined __GNUC__ && ! defined __clang__
143-
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
143+
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 7) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
144144
bool Copyable = is_copy_constructible<T>::value,
145145
bool Movable = true
146146
#else

include/boost/thread/detail/thread.hpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
#include <algorithm>
3131
#include <boost/core/ref.hpp>
3232
#include <boost/cstdint.hpp>
33-
#include <boost/bind.hpp>
33+
#include <boost/bind/bind.hpp>
3434
#include <stdlib.h>
3535
#include <memory>
3636
#include <boost/core/enable_if.hpp>
@@ -637,10 +637,6 @@ namespace boost
637637
#endif
638638
{}
639639

640-
id(const id& other) BOOST_NOEXCEPT :
641-
thread_data(other.thread_data)
642-
{}
643-
644640
bool operator==(const id& y) const BOOST_NOEXCEPT
645641
{
646642
return thread_data==y.thread_data;

0 commit comments

Comments
 (0)