Compare commits

...

14 Commits

Author SHA1 Message Date
Peter Dimov
7b9a969215 Add deduction guides to shared_ptr and weak_ptr. Fixes #73. 2020-04-02 00:28:02 +03:00
Glen Fernandes
91cd83e5bf Correct make_unique_noinit example 2020-02-13 21:36:58 -05:00
Peter Dimov
2fdb8c4b0a Fix Travis issues; remove unnecessary jobs 2020-01-14 19:16:05 +02:00
Peter Dimov
e806b53433 Update Travis 2020-01-14 17:04:51 +02:00
Peter Dimov
e0c7bd9a7e Don't build tests when installing; link to Threads::Threads in tests because of lw_thread_test.cpp 2020-01-10 00:54:01 +02:00
Peter Dimov
766ab05a12 Update submodule libs/preprocessor on Travis (needed by CMake tests) 2020-01-09 15:53:38 +02:00
Peter Dimov
05cbefd28e Update submodule tools/cmake on Travis 2020-01-09 01:41:15 +02:00
Peter Dimov
bfbdf4f45f Add CMake install support, tests 2020-01-08 05:08:37 +02:00
Peter Dimov
169c0cd52a Remove lwm_nop.hpp; add lwm_std_mutex.hpp 2020-01-08 03:57:13 +02:00
Peter Dimov
7d70691a16 Remove Windows Runtime workaround from yield_k.hpp; it's no longer relevant, Sleep is available 2020-01-08 03:09:11 +02:00
Peter Dimov
90c27d7cfa Remove Windows Runtime workaround from lwm_win32_cs.hpp; it's no longer relevant, InitializeCriticalSection is available 2020-01-08 02:55:14 +02:00
Glen Fernandes
43d1fe12c5 Include lightweight_test from core and workaround from config 2020-01-01 08:31:25 -05:00
Peter Dimov
a2749dddb4 Disable 32 bit clang-win to avoid mspdbcore.dll errors 2019-12-05 15:49:48 +02:00
Peter Dimov
a71e62146c Add VS2019 to Appveyor; separate clang-win into its own job 2019-11-24 00:05:38 +02:00
110 changed files with 422 additions and 237 deletions

View File

@@ -1,12 +1,10 @@
# Copyright 2016-2019 Peter Dimov # Copyright 2016-2020 Peter Dimov
# Distributed under the Boost Software License, Version 1.0. # Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or copy at http://boost.org/LICENSE_1_0.txt) # (See accompanying file LICENSE_1_0.txt or copy at http://boost.org/LICENSE_1_0.txt)
language: cpp language: cpp
sudo: false dist: xenial
dist: trusty
branches: branches:
only: only:
@@ -25,8 +23,19 @@ matrix:
include: include:
- os: linux - os: linux
arch: arm64
compiler: g++ compiler: g++
env: TOOLSET=gcc COMPILER=g++ CXXSTD=03,11 env: TOOLSET=gcc COMPILER=g++ CXXSTD=03,11,14
- os: linux
arch: ppc64le
compiler: g++
env: TOOLSET=gcc COMPILER=g++ CXXSTD=03,11,14
- os: linux
arch: s390x
compiler: g++
env: TOOLSET=gcc COMPILER=g++ CXXSTD=03,11,14
- os: linux - os: linux
compiler: g++-4.4 compiler: g++-4.4
@@ -158,10 +167,7 @@ matrix:
- ubuntu-toolchain-r-test - ubuntu-toolchain-r-test
- os: linux - os: linux
compiler: clang++ dist: trusty
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11
- os: linux
compiler: /usr/bin/clang++ compiler: /usr/bin/clang++
env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=03,11 env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=03,11
addons: addons:
@@ -170,6 +176,7 @@ matrix:
- clang-3.3 - clang-3.3
- os: linux - os: linux
dist: trusty
compiler: /usr/bin/clang++ compiler: /usr/bin/clang++
env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=03,11 env: TOOLSET=clang COMPILER=/usr/bin/clang++ CXXSTD=03,11
addons: addons:
@@ -179,15 +186,13 @@ matrix:
- os: linux - os: linux
compiler: clang++-3.5 compiler: clang++-3.5
env: TOOLSET=clang COMPILER=clang++-3.5 CXXSTD=03,11,14,1z env: TOOLSET=clang COMPILER=clang++-3.5 CXXSTD=03,11
addons: addons:
apt: apt:
packages: packages:
- clang-3.5 - clang-3.5
- libstdc++-4.9-dev
sources: sources:
- ubuntu-toolchain-r-test - ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.5
- os: linux - os: linux
compiler: clang++-3.6 compiler: clang++-3.6
@@ -198,7 +203,6 @@ matrix:
- clang-3.6 - clang-3.6
sources: sources:
- ubuntu-toolchain-r-test - ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.6
- os: linux - os: linux
compiler: clang++-3.7 compiler: clang++-3.7
@@ -209,7 +213,6 @@ matrix:
- clang-3.7 - clang-3.7
sources: sources:
- ubuntu-toolchain-r-test - ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.7
- os: linux - os: linux
compiler: clang++-3.8 compiler: clang++-3.8
@@ -218,10 +221,8 @@ matrix:
apt: apt:
packages: packages:
- clang-3.8 - clang-3.8
- libstdc++-4.9-dev
sources: sources:
- ubuntu-toolchain-r-test - ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.8
- os: linux - os: linux
compiler: clang++-3.9 compiler: clang++-3.9
@@ -230,10 +231,8 @@ matrix:
apt: apt:
packages: packages:
- clang-3.9 - clang-3.9
- libstdc++-4.9-dev
sources: sources:
- ubuntu-toolchain-r-test - ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.9
- os: linux - os: linux
compiler: clang++-4.0 compiler: clang++-4.0
@@ -244,7 +243,6 @@ matrix:
- clang-4.0 - clang-4.0
sources: sources:
- ubuntu-toolchain-r-test - ubuntu-toolchain-r-test
- llvm-toolchain-trusty-4.0
- os: linux - os: linux
compiler: clang++-5.0 compiler: clang++-5.0
@@ -255,7 +253,6 @@ matrix:
- clang-5.0 - clang-5.0
sources: sources:
- ubuntu-toolchain-r-test - ubuntu-toolchain-r-test
- llvm-toolchain-trusty-5.0
- os: linux - os: linux
compiler: clang++-6.0 compiler: clang++-6.0
@@ -266,7 +263,6 @@ matrix:
- clang-6.0 - clang-6.0
sources: sources:
- ubuntu-toolchain-r-test - ubuntu-toolchain-r-test
- llvm-toolchain-trusty-6.0
- os: linux - os: linux
compiler: clang++-7 compiler: clang++-7
@@ -277,7 +273,7 @@ matrix:
- clang-7 - clang-7
sources: sources:
- ubuntu-toolchain-r-test - ubuntu-toolchain-r-test
- llvm-toolchain-trusty-7 - llvm-toolchain-xenial-7
- os: linux - os: linux
compiler: clang++-8 compiler: clang++-8
@@ -288,21 +284,34 @@ matrix:
- clang-8 - clang-8
sources: sources:
- ubuntu-toolchain-r-test - ubuntu-toolchain-r-test
- llvm-toolchain-trusty-8 - llvm-toolchain-xenial-8
- os: linux - os: linux
compiler: clang++-7 dist: xenial
env: UBSAN=1 TOOLSET=clang COMPILER=clang++-7 CXXSTD=03,11,14,17,2a UBSAN_OPTIONS=print_stacktrace=1 compiler: clang++-9
env: TOOLSET=clang COMPILER=clang++-9 CXXSTD=03,11,14,17,2a
addons: addons:
apt: apt:
packages: packages:
- clang-7 - clang-9
- libstdc++-5-dev
sources: sources:
- ubuntu-toolchain-r-test - ubuntu-toolchain-r-test
- llvm-toolchain-trusty-7 - sourceline: 'deb https://apt.llvm.org/xenial/ llvm-toolchain-xenial-9 main'
key_url: 'https://apt.llvm.org/llvm-snapshot.gpg.key'
- os: linux - os: linux
compiler: clang++-8
env: UBSAN=1 TOOLSET=clang COMPILER=clang++-8 CXXSTD=03,11,14,17,2a UBSAN_OPTIONS=print_stacktrace=1
addons:
apt:
packages:
- clang-8
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-xenial-8
- os: linux
dist: trusty
compiler: clang++-libc++ compiler: clang++-libc++
env: TOOLSET=clang COMPILER=clang++-libc++ CXXSTD=03,11,14,1z env: TOOLSET=clang COMPILER=clang++-libc++ CXXSTD=03,11,14,1z
addons: addons:
@@ -311,6 +320,7 @@ matrix:
- libc++-dev - libc++-dev
- os: linux - os: linux
dist: trusty
compiler: clang++-libc++ compiler: clang++-libc++
env: UBSAN=1 TOOLSET=clang COMPILER=clang++-libc++ CXXSTD=03,11,14,1z UBSAN_OPTIONS=print_stacktrace=1 env: UBSAN=1 TOOLSET=clang COMPILER=clang++-libc++ CXXSTD=03,11,14,1z UBSAN_OPTIONS=print_stacktrace=1
addons: addons:
@@ -322,6 +332,17 @@ matrix:
compiler: clang++ compiler: clang++
env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z env: TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z
- os: osx
compiler: clang++
env: UBSAN=1 TOOLSET=clang COMPILER=clang++ CXXSTD=03,11,14,1z UBSAN_OPTIONS=print_stacktrace=1
- os: linux
env: CMAKE_TEST=1
script:
- mkdir __build__ && cd __build__
- cmake -DBOOST_ENABLE_CMAKE=1 -DBoost_VERBOSE=1 -DBOOST_INCLUDE_LIBRARIES=smart_ptr -DBUILD_TESTING=ON ..
- ctest --output-on-failure -R boost_smart_ptr
- os: linux - os: linux
compiler: g++ compiler: g++
env: CMAKE_SUBDIR_TEST=1 env: CMAKE_SUBDIR_TEST=1
@@ -331,6 +352,17 @@ matrix:
- cmake --build . - cmake --build .
- cmake --build . --target check - cmake --build . --target check
- os: linux
env: CMAKE_INSTALL_TEST=1
script:
- mkdir __build__ && cd __build__
- cmake -DBOOST_ENABLE_CMAKE=1 -DBoost_VERBOSE=1 -DBOOST_INCLUDE_LIBRARIES=smart_ptr -DBUILD_TESTING=OFF -DCMAKE_INSTALL_PREFIX=~/.local ..
- cmake --build . --target install
- cd ../libs/smart_ptr/test/cmake_install_test && mkdir __build__ && cd __build__
- cmake -DCMAKE_INSTALL_PREFIX=~/.local ..
- cmake --build .
- cmake --build . --target check
install: install:
- BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true - BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
- cd .. - cd ..
@@ -352,7 +384,9 @@ install:
- git submodule init tools/build - git submodule init tools/build
- git submodule init libs/headers - git submodule init libs/headers
- git submodule init tools/boost_install - git submodule init tools/boost_install
- git submodule update --jobs 3 - git submodule init tools/cmake
- git submodule init libs/preprocessor
- git submodule update # no --jobs 3 on non-amd64
- cp -r $TRAVIS_BUILD_DIR/* libs/smart_ptr - cp -r $TRAVIS_BUILD_DIR/* libs/smart_ptr
- ./bootstrap.sh - ./bootstrap.sh
- ./b2 headers - ./b2 headers

View File

@@ -1,12 +1,10 @@
# Copyright 2018 Mike Dev # Copyright 2018-2020 Peter Dimov
# Distributed under the Boost Software License, Version 1.0. # Distributed under the Boost Software License, Version 1.0.
# See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt # See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt
# Partial (add_subdirectory only) and experimental CMake support cmake_minimum_required(VERSION 3.5...3.16)
# Subject to change; please do not rely on the contents of this file yet
cmake_minimum_required(VERSION 3.5) project(boost_smart_ptr VERSION "${BOOST_SUPERPROJECT_VERSION}" LANGUAGES CXX)
project(BoostSmartPtr LANGUAGES CXX)
add_library(boost_smart_ptr INTERFACE) add_library(boost_smart_ptr INTERFACE)
add_library(Boost::smart_ptr ALIAS boost_smart_ptr) add_library(Boost::smart_ptr ALIAS boost_smart_ptr)
@@ -14,13 +12,25 @@ add_library(Boost::smart_ptr ALIAS boost_smart_ptr)
target_include_directories(boost_smart_ptr INTERFACE include) target_include_directories(boost_smart_ptr INTERFACE include)
target_link_libraries(boost_smart_ptr target_link_libraries(boost_smart_ptr
INTERFACE INTERFACE
Boost::assert Boost::assert
Boost::config Boost::config
Boost::core Boost::core
Boost::move Boost::move
Boost::predef Boost::static_assert
Boost::static_assert Boost::throw_exception
Boost::throw_exception Boost::type_traits
Boost::type_traits
) )
if(BOOST_SUPERPROJECT_VERSION)
include(BoostInstall)
boost_install(TARGETS boost_smart_ptr HEADER_DIRECTORY include/)
endif()
if(BUILD_TESTING)
add_subdirectory(test)
endif()

View File

@@ -20,7 +20,15 @@ environment:
TOOLSET: msvc-12.0,msvc-14.0 TOOLSET: msvc-12.0,msvc-14.0
ADDRMD: 32,64 ADDRMD: 32,64
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
TOOLSET: msvc-14.1,clang-win TOOLSET: msvc-14.1
CXXSTD: 14,17
ADDRMD: 32,64
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
TOOLSET: clang-win
CXXSTD: 14,17
ADDRMD: 64
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
TOOLSET: msvc-14.2
CXXSTD: 14,17 CXXSTD: 14,17
ADDRMD: 32,64 ADDRMD: 32,64
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015

View File

@@ -106,7 +106,7 @@ template<class T>
+ +
Constraints:: `T` is not an array. Constraints:: `T` is not an array.
Returns:: `std::unique_ptr<T>(new T)`. Returns:: `std::unique_ptr<T>(new T)`.
Example:: `auto p = make_unique_noinit<double[1024]>();` Example:: `auto p = make_unique_noinit<std::array<double, 1024> >();`
``` ```
template<class T> template<class T>

View File

@@ -28,15 +28,12 @@
#include <boost/config.hpp> #include <boost/config.hpp>
#if !defined(BOOST_HAS_THREADS) #if !defined(BOOST_NO_CXX11_HDR_MUTEX )
# include <boost/smart_ptr/detail/lwm_nop.hpp> # include <boost/smart_ptr/detail/lwm_std_mutex.hpp>
#elif defined(BOOST_HAS_PTHREADS) #elif defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
# include <boost/smart_ptr/detail/lwm_pthreads.hpp>
#elif defined(BOOST_HAS_WINTHREADS) || defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
# include <boost/smart_ptr/detail/lwm_win32_cs.hpp> # include <boost/smart_ptr/detail/lwm_win32_cs.hpp>
#else #else
// Use #define BOOST_DISABLE_THREADS to avoid the error # include <boost/smart_ptr/detail/lwm_pthreads.hpp>
# error Unrecognized threading platform
#endif #endif
#endif // #ifndef BOOST_SMART_PTR_DETAIL_LIGHTWEIGHT_MUTEX_HPP_INCLUDED #endif // #ifndef BOOST_SMART_PTR_DETAIL_LIGHTWEIGHT_MUTEX_HPP_INCLUDED

View File

@@ -1,37 +0,0 @@
#ifndef BOOST_SMART_PTR_DETAIL_LWM_NOP_HPP_INCLUDED
#define BOOST_SMART_PTR_DETAIL_LWM_NOP_HPP_INCLUDED
// MS compatible compilers support #pragma once
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
# pragma once
#endif
//
// boost/detail/lwm_nop.hpp
//
// Copyright (c) 2002 Peter Dimov and Multi Media Ltd.
//
// Distributed under the Boost Software License, Version 1.0. (See
// accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt)
//
namespace boost
{
namespace detail
{
class lightweight_mutex
{
public:
typedef lightweight_mutex scoped_lock;
};
} // namespace detail
} // namespace boost
#endif // #ifndef BOOST_SMART_PTR_DETAIL_LWM_NOP_HPP_INCLUDED

View File

@@ -0,0 +1,62 @@
#ifndef BOOST_SMART_PTR_DETAIL_LWM_STD_MUTEX_HPP_INCLUDED
#define BOOST_SMART_PTR_DETAIL_LWM_STD_MUTEX_HPP_INCLUDED
// Copyright 2020 Peter Dimov
// Distributed under the Boost Software License, Version 1.0.
// https://www.boost.org/LICENSE_1_0.txt)
#include <boost/assert.hpp>
#include <mutex>
namespace boost
{
namespace detail
{
class lightweight_mutex
{
private:
std::mutex m_;
lightweight_mutex(lightweight_mutex const &);
lightweight_mutex & operator=(lightweight_mutex const &);
public:
lightweight_mutex()
{
}
class scoped_lock;
friend class scoped_lock;
class scoped_lock
{
private:
std::mutex & m_;
scoped_lock(scoped_lock const &);
scoped_lock & operator=(scoped_lock const &);
public:
scoped_lock( lightweight_mutex & m ): m_( m.m_ )
{
m_.lock();
}
~scoped_lock()
{
m_.unlock();
}
};
};
} // namespace detail
} // namespace boost
#endif // #ifndef BOOST_SMART_PTR_DETAIL_LWM_STD_MUTEX_HPP_INCLUDED

View File

@@ -11,15 +11,12 @@
// boost/detail/lwm_win32_cs.hpp // boost/detail/lwm_win32_cs.hpp
// //
// Copyright (c) 2002, 2003 Peter Dimov // Copyright (c) 2002, 2003 Peter Dimov
// Copyright (c) Microsoft Corporation 2014
// //
// Distributed under the Boost Software License, Version 1.0. (See // Distributed under the Boost Software License, Version 1.0. (See
// accompanying file LICENSE_1_0.txt or copy at // accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt) // http://www.boost.org/LICENSE_1_0.txt)
// //
#include <boost/predef.h>
#ifdef BOOST_USE_WINDOWS_H #ifdef BOOST_USE_WINDOWS_H
#include <windows.h> #include <windows.h>
@@ -52,11 +49,7 @@ struct critical_section
#endif #endif
}; };
#if BOOST_PLAT_WINDOWS_RUNTIME
extern "C" __declspec(dllimport) void __stdcall InitializeCriticalSectionEx(::_RTL_CRITICAL_SECTION *, unsigned long, unsigned long);
#else
extern "C" __declspec(dllimport) void __stdcall InitializeCriticalSection(::_RTL_CRITICAL_SECTION *); extern "C" __declspec(dllimport) void __stdcall InitializeCriticalSection(::_RTL_CRITICAL_SECTION *);
#endif
extern "C" __declspec(dllimport) void __stdcall EnterCriticalSection(::_RTL_CRITICAL_SECTION *); extern "C" __declspec(dllimport) void __stdcall EnterCriticalSection(::_RTL_CRITICAL_SECTION *);
extern "C" __declspec(dllimport) void __stdcall LeaveCriticalSection(::_RTL_CRITICAL_SECTION *); extern "C" __declspec(dllimport) void __stdcall LeaveCriticalSection(::_RTL_CRITICAL_SECTION *);
extern "C" __declspec(dllimport) void __stdcall DeleteCriticalSection(::_RTL_CRITICAL_SECTION *); extern "C" __declspec(dllimport) void __stdcall DeleteCriticalSection(::_RTL_CRITICAL_SECTION *);
@@ -67,11 +60,7 @@ typedef ::_RTL_CRITICAL_SECTION rtl_critical_section;
typedef ::CRITICAL_SECTION critical_section; typedef ::CRITICAL_SECTION critical_section;
#if BOOST_PLAT_WINDOWS_RUNTIME
using ::InitializeCriticalSectionEx;
#else
using ::InitializeCriticalSection; using ::InitializeCriticalSection;
#endif
using ::EnterCriticalSection; using ::EnterCriticalSection;
using ::LeaveCriticalSection; using ::LeaveCriticalSection;
using ::DeleteCriticalSection; using ::DeleteCriticalSection;
@@ -93,11 +82,7 @@ public:
lightweight_mutex() lightweight_mutex()
{ {
#if BOOST_PLAT_WINDOWS_RUNTIME
boost::detail::InitializeCriticalSectionEx(reinterpret_cast< rtl_critical_section* >(&cs_), 4000, 0);
#else
boost::detail::InitializeCriticalSection(reinterpret_cast< rtl_critical_section* >(&cs_)); boost::detail::InitializeCriticalSection(reinterpret_cast< rtl_critical_section* >(&cs_));
#endif
} }
~lightweight_mutex() ~lightweight_mutex()

View File

@@ -26,7 +26,7 @@
#include <boost/smart_ptr/detail/sp_interlocked.hpp> #include <boost/smart_ptr/detail/sp_interlocked.hpp>
#include <boost/smart_ptr/detail/sp_typeinfo_.hpp> #include <boost/smart_ptr/detail/sp_typeinfo_.hpp>
#include <boost/detail/workaround.hpp> #include <boost/config/workaround.hpp>
#include <boost/config.hpp> #include <boost/config.hpp>
namespace boost namespace boost

View File

@@ -11,7 +11,6 @@
// yield_k.hpp // yield_k.hpp
// //
// Copyright (c) 2008 Peter Dimov // Copyright (c) 2008 Peter Dimov
// Copyright (c) Microsoft Corporation 2014
// //
// void yield( unsigned k ); // void yield( unsigned k );
// //
@@ -25,11 +24,6 @@
// //
#include <boost/config.hpp> #include <boost/config.hpp>
#include <boost/predef/platform/windows_runtime.h>
#if BOOST_PLAT_WINDOWS_RUNTIME
#include <thread>
#endif
// BOOST_SMT_PAUSE // BOOST_SMT_PAUSE
@@ -59,7 +53,7 @@ namespace boost
namespace detail namespace detail
{ {
#if !defined( BOOST_USE_WINDOWS_H ) && !BOOST_PLAT_WINDOWS_RUNTIME #if !defined( BOOST_USE_WINDOWS_H )
#if defined(__clang__) && defined(__x86_64__) #if defined(__clang__) && defined(__x86_64__)
// clang x64 warns that __stdcall is ignored // clang x64 warns that __stdcall is ignored
@@ -76,7 +70,7 @@ namespace detail
#undef BOOST_SP_STDCALL #undef BOOST_SP_STDCALL
#endif // !defined( BOOST_USE_WINDOWS_H ) && !BOOST_PLAT_WINDOWS_RUNTIME #endif // !defined( BOOST_USE_WINDOWS_H )
inline void yield( unsigned k ) BOOST_NOEXCEPT inline void yield( unsigned k ) BOOST_NOEXCEPT
{ {
@@ -89,7 +83,6 @@ inline void yield( unsigned k ) BOOST_NOEXCEPT
BOOST_SMT_PAUSE BOOST_SMT_PAUSE
} }
#endif #endif
#if !BOOST_PLAT_WINDOWS_RUNTIME
else if( k < 32 ) else if( k < 32 )
{ {
Sleep( 0 ); Sleep( 0 );
@@ -98,13 +91,6 @@ inline void yield( unsigned k ) BOOST_NOEXCEPT
{ {
Sleep( 1 ); Sleep( 1 );
} }
#else
else
{
// Sleep isn't supported on the Windows Runtime.
std::this_thread::yield();
}
#endif
} }
} // namespace detail } // namespace detail

View File

@@ -16,7 +16,7 @@
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp> #include <boost/weak_ptr.hpp>
#include <boost/assert.hpp> #include <boost/assert.hpp>
#include <boost/detail/workaround.hpp> #include <boost/config/workaround.hpp>
namespace boost namespace boost
{ {

View File

@@ -16,7 +16,7 @@
#include <boost/config.hpp> #include <boost/config.hpp>
#include <boost/assert.hpp> #include <boost/assert.hpp>
#include <boost/detail/workaround.hpp> #include <boost/config/workaround.hpp>
#include <boost/smart_ptr/detail/sp_convertible.hpp> #include <boost/smart_ptr/detail/sp_convertible.hpp>
#include <boost/smart_ptr/detail/sp_nullptr_t.hpp> #include <boost/smart_ptr/detail/sp_nullptr_t.hpp>
#include <boost/smart_ptr/detail/sp_noexcept.hpp> #include <boost/smart_ptr/detail/sp_noexcept.hpp>

View File

@@ -16,7 +16,7 @@
#include <boost/smart_ptr/detail/sp_nullptr_t.hpp> #include <boost/smart_ptr/detail/sp_nullptr_t.hpp>
#include <boost/smart_ptr/detail/sp_noexcept.hpp> #include <boost/smart_ptr/detail/sp_noexcept.hpp>
#include <boost/detail/workaround.hpp> #include <boost/config/workaround.hpp>
#include <cstddef> // for std::ptrdiff_t #include <cstddef> // for std::ptrdiff_t

View File

@@ -16,7 +16,7 @@
#include <boost/smart_ptr/detail/sp_nullptr_t.hpp> #include <boost/smart_ptr/detail/sp_nullptr_t.hpp>
#include <boost/smart_ptr/detail/sp_disable_deprecated.hpp> #include <boost/smart_ptr/detail/sp_disable_deprecated.hpp>
#include <boost/smart_ptr/detail/sp_noexcept.hpp> #include <boost/smart_ptr/detail/sp_noexcept.hpp>
#include <boost/detail/workaround.hpp> #include <boost/config/workaround.hpp>
#ifndef BOOST_NO_AUTO_PTR #ifndef BOOST_NO_AUTO_PTR
# include <memory> // for std::auto_ptr # include <memory> // for std::auto_ptr

View File

@@ -25,7 +25,7 @@
#include <boost/smart_ptr/detail/shared_count.hpp> #include <boost/smart_ptr/detail/shared_count.hpp>
#include <boost/smart_ptr/detail/sp_nullptr_t.hpp> #include <boost/smart_ptr/detail/sp_nullptr_t.hpp>
#include <boost/smart_ptr/detail/sp_noexcept.hpp> #include <boost/smart_ptr/detail/sp_noexcept.hpp>
#include <boost/detail/workaround.hpp> #include <boost/config/workaround.hpp>
#include <cstddef> // for std::ptrdiff_t #include <cstddef> // for std::ptrdiff_t
#include <algorithm> // for std::swap #include <algorithm> // for std::swap

View File

@@ -26,7 +26,7 @@
#include <boost/checked_delete.hpp> #include <boost/checked_delete.hpp>
#include <boost/throw_exception.hpp> #include <boost/throw_exception.hpp>
#include <boost/smart_ptr/detail/shared_count.hpp> #include <boost/smart_ptr/detail/shared_count.hpp>
#include <boost/detail/workaround.hpp> #include <boost/config/workaround.hpp>
#include <boost/smart_ptr/detail/sp_convertible.hpp> #include <boost/smart_ptr/detail/sp_convertible.hpp>
#include <boost/smart_ptr/detail/sp_nullptr_t.hpp> #include <boost/smart_ptr/detail/sp_nullptr_t.hpp>
#include <boost/smart_ptr/detail/sp_disable_deprecated.hpp> #include <boost/smart_ptr/detail/sp_disable_deprecated.hpp>
@@ -1175,6 +1175,13 @@ template<class D, class T> D const * basic_get_local_deleter( D const *, shared_
} // namespace detail } // namespace detail
#if defined(__cpp_deduction_guides)
template<class T> shared_ptr( weak_ptr<T> ) -> shared_ptr<T>;
template<class T, class D> shared_ptr( std::unique_ptr<T, D> ) -> shared_ptr<T>;
#endif
} // namespace boost } // namespace boost
#if defined( BOOST_SP_DISABLE_DEPRECATED ) #if defined( BOOST_SP_DISABLE_DEPRECATED )

View File

@@ -264,6 +264,12 @@ template<class T> void swap(weak_ptr<T> & a, weak_ptr<T> & b) BOOST_SP_NOEXCEPT
a.swap(b); a.swap(b);
} }
#if defined(__cpp_deduction_guides)
template<class T> weak_ptr( shared_ptr<T> ) -> weak_ptr<T>;
#endif
} // namespace boost } // namespace boost
#endif // #ifndef BOOST_SMART_PTR_WEAK_PTR_HPP_INCLUDED #endif // #ifndef BOOST_SMART_PTR_WEAK_PTR_HPP_INCLUDED

15
test/CMakeLists.txt Normal file
View File

@@ -0,0 +1,15 @@
# Copyright 2018, 2019 Peter Dimov
# Distributed under the Boost Software License, Version 1.0.
# See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt
include(BoostTestJamfile OPTIONAL RESULT_VARIABLE HAVE_BOOST_TEST)
if(HAVE_BOOST_TEST)
# for lw_thread_test.cpp
set(THREADS_PREFER_PTHREAD_FLAG ON)
find_package(Threads)
boost_test_jamfile(FILE Jamfile LINK_LIBRARIES Boost::smart_ptr Boost::core Boost::align Boost::atomic Boost::container_hash Threads::Threads)
endif()

View File

@@ -57,10 +57,11 @@ run yield_k_test.cpp : : : <threading>multi : yield_k_test.mt ;
run spinlock_test.cpp ; run spinlock_test.cpp ;
run spinlock_try_test.cpp ; run spinlock_try_test.cpp ;
run spinlock_try_test.cpp : : : <threading>multi : spinlock_try_test.mt ; run spinlock_try_test.cpp : : : <threading>multi : spinlock_try_test.mt ;
run spinlock_pool_test.cpp : : : run spinlock_pool_test.cpp
# msvc-8.0, 9.0 optimizer codegen bug for `x % 41` : : :
<toolset>msvc-8.0,<variant>release:<build>no # msvc-8.0, 9.0 optimizer codegen bug for `x % 41`
<toolset>msvc-9.0,<variant>release:<build>no ; <toolset>msvc-8.0,<variant>release:<build>no
<toolset>msvc-9.0,<variant>release:<build>no ;
run make_shared_test.cpp ; run make_shared_test.cpp ;
run make_shared_move_emulation_test.cpp ; run make_shared_move_emulation_test.cpp ;
@@ -78,7 +79,10 @@ run sp_recursive_assign_test.cpp ;
run sp_recursive_assign2_test.cpp ; run sp_recursive_assign2_test.cpp ;
run sp_recursive_assign_rv_test.cpp ; run sp_recursive_assign_rv_test.cpp ;
run sp_recursive_assign2_rv_test.cpp ; run sp_recursive_assign2_rv_test.cpp ;
compile-fail auto_ptr_lv_fail.cpp : <toolset>gcc-4.4.7:<build>no ;
compile-fail auto_ptr_lv_fail.cpp
: <toolset>gcc-4.4.7:<build>no ;
run atomic_count_test2.cpp ; run atomic_count_test2.cpp ;
run sp_typeinfo_test.cpp ; run sp_typeinfo_test.cpp ;
compile make_shared_fp_test.cpp ; compile make_shared_fp_test.cpp ;
@@ -158,23 +162,33 @@ compile-fail array_fail_dereference.cpp ;
compile-fail array_fail_member_access.cpp ; compile-fail array_fail_member_access.cpp ;
compile-fail array_fail_array_access.cpp ; compile-fail array_fail_array_access.cpp ;
run make_shared_array_test.cpp : : : <toolset>msvc-8.0:<build>no ; run make_shared_array_test.cpp
run make_shared_arrays_test.cpp ; # <cxxflags>-fno-deduce-init-list no longer needed for gcc-4.6 : : : <toolset>msvc-8.0:<build>no ;
run make_shared_array_throws_test.cpp : : : <toolset>msvc-8.0:<build>no ; run make_shared_arrays_test.cpp ;
run make_shared_array_esft_test.cpp : : : <toolset>msvc-8.0:<build>no ; run make_shared_array_throws_test.cpp
run make_shared_array_noinit_test.cpp : : : <toolset>msvc-8.0:<build>no ; : : : <toolset>msvc-8.0:<build>no ;
run make_shared_array_value_test.cpp : : : <toolset>msvc-8.0:<build>no ; run make_shared_array_esft_test.cpp
: : : <toolset>msvc-8.0:<build>no ;
run make_shared_array_noinit_test.cpp
: : : <toolset>msvc-8.0:<build>no ;
run make_shared_array_value_test.cpp
: : : <toolset>msvc-8.0:<build>no ;
run allocate_shared_array_test.cpp ; run allocate_shared_array_test.cpp ;
run allocate_shared_arrays_test.cpp ; # <cxxflags>-fno-deduce-init-list no longer needed for gcc-4.6 run allocate_shared_arrays_test.cpp ;
run allocate_shared_array_throws_test.cpp : : : <toolset>msvc-8.0:<build>no ; run allocate_shared_array_throws_test.cpp
run allocate_shared_array_esft_test.cpp : : : <toolset>msvc-8.0:<build>no ; : : : <toolset>msvc-8.0:<build>no ;
run allocate_shared_array_noinit_test.cpp : : : <toolset>msvc-8.0:<build>no ; run allocate_shared_array_esft_test.cpp
run allocate_shared_array_value_test.cpp : : : <toolset>msvc-8.0:<build>no ; : : : <toolset>msvc-8.0:<build>no ;
run allocate_shared_array_noinit_test.cpp
: : : <toolset>msvc-8.0:<build>no ;
run allocate_shared_array_value_test.cpp
: : : <toolset>msvc-8.0:<build>no ;
run allocate_shared_array_construct_test.cpp ; run allocate_shared_array_construct_test.cpp ;
run make_unique_test.cpp ; run make_unique_test.cpp ;
run make_unique_args_test.cpp ; run make_unique_args_test.cpp ;
run make_unique_value_test.cpp : : : <toolset>gcc-4.6:<cxxflags>-fno-deduce-init-list ; run make_unique_value_test.cpp
: : : <toolset>gcc-4.6:<cxxflags>-fno-deduce-init-list ;
run make_unique_noinit_test.cpp ; run make_unique_noinit_test.cpp ;
run make_unique_throws_test.cpp ; run make_unique_throws_test.cpp ;
run make_unique_array_test.cpp ; run make_unique_array_test.cpp ;
@@ -236,7 +250,8 @@ run shared_ptr_fn_test.cpp ;
run get_deleter_test2.cpp ; run get_deleter_test2.cpp ;
run get_deleter_test3.cpp ; run get_deleter_test3.cpp ;
run get_deleter_array_test2.cpp ; run get_deleter_array_test2.cpp ;
run get_deleter_array_test3.cpp : : : <toolset>msvc-8.0:<build>no ; run get_deleter_array_test3.cpp
: : : <toolset>msvc-8.0:<build>no ;
run sp_convertible_test2.cpp ; run sp_convertible_test2.cpp ;
@@ -258,13 +273,15 @@ run allocate_local_shared_test.cpp ;
run allocate_local_shared_esft_test.cpp ; run allocate_local_shared_esft_test.cpp ;
run make_local_shared_array_test.cpp ; run make_local_shared_array_test.cpp ;
run make_local_shared_arrays_test.cpp : : : <toolset>gcc-4.6.3_0x:<cxxflags>-fno-deduce-init-list ; run make_local_shared_arrays_test.cpp
: : : <toolset>gcc-4.6.3_0x:<cxxflags>-fno-deduce-init-list ;
run make_local_shared_array_throws_test.cpp ; run make_local_shared_array_throws_test.cpp ;
run make_local_shared_array_esft_test.cpp ; run make_local_shared_array_esft_test.cpp ;
run make_local_shared_array_noinit_test.cpp ; run make_local_shared_array_noinit_test.cpp ;
run make_local_shared_array_value_test.cpp ; run make_local_shared_array_value_test.cpp ;
run allocate_local_shared_array_test.cpp ; run allocate_local_shared_array_test.cpp ;
run allocate_local_shared_arrays_test.cpp : : : <toolset>gcc-4.6.3_0x:<cxxflags>-fno-deduce-init-list ; run allocate_local_shared_arrays_test.cpp
: : : <toolset>gcc-4.6.3_0x:<cxxflags>-fno-deduce-init-list ;
run allocate_local_shared_array_throws_test.cpp ; run allocate_local_shared_array_throws_test.cpp ;
run allocate_local_shared_array_esft_test.cpp ; run allocate_local_shared_array_esft_test.cpp ;
run allocate_local_shared_array_noinit_test.cpp ; run allocate_local_shared_array_noinit_test.cpp ;
@@ -275,9 +292,11 @@ run local_sp_fn_test.cpp ;
run lsp_convertible_test.cpp ; run lsp_convertible_test.cpp ;
run lsp_convertible_test2.cpp ; run lsp_convertible_test2.cpp ;
run make_shared_array_tmp_test.cpp : : : <toolset>msvc-8.0:<build>no ; run make_shared_array_tmp_test.cpp
: : : <toolset>msvc-8.0:<build>no ;
run lw_thread_test.cpp : : : <threading>multi ; run lw_thread_test.cpp
: : : <threading>multi ;
compile sp_windows_h_test.cpp ; compile sp_windows_h_test.cpp ;
compile spinlock_windows_h_test.cpp ; compile spinlock_windows_h_test.cpp ;
@@ -333,3 +352,7 @@ run allocate_unique_noinit_test.cpp ;
run allocate_unique_test.cpp ; run allocate_unique_test.cpp ;
run allocate_unique_throws_test.cpp ; run allocate_unique_throws_test.cpp ;
run allocate_unique_value_test.cpp ; run allocate_unique_value_test.cpp ;
run sp_guides_test.cpp ;
run sp_guides_test2.cpp ;
run wp_guides_test.cpp ;

View File

@@ -8,7 +8,7 @@
// See accompanying file LICENSE_1_0.txt or copy at // See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt // http://www.boost.org/LICENSE_1_0.txt
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/make_shared.hpp> #include <boost/make_shared.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp> #include <boost/weak_ptr.hpp>

View File

@@ -8,7 +8,7 @@
// See accompanying file LICENSE_1_0.txt or copy at // See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt // http://www.boost.org/LICENSE_1_0.txt
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/make_shared.hpp> #include <boost/make_shared.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp> #include <boost/weak_ptr.hpp>

View File

@@ -6,7 +6,7 @@
// See accompanying file LICENSE_1_0.txt or copy at // See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt // http://www.boost.org/LICENSE_1_0.txt
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/make_shared.hpp> #include <boost/make_shared.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/enable_shared_from_this.hpp> #include <boost/enable_shared_from_this.hpp>

View File

@@ -6,7 +6,7 @@
// See accompanying file LICENSE_1_0.txt or copy at // See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt // http://www.boost.org/LICENSE_1_0.txt
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/make_shared.hpp> #include <boost/make_shared.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp> #include <boost/weak_ptr.hpp>

View File

@@ -9,7 +9,7 @@
// //
#include <boost/detail/atomic_count.hpp> #include <boost/detail/atomic_count.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
int main() int main()
{ {

View File

@@ -9,7 +9,7 @@
// //
#include <boost/detail/atomic_count.hpp> #include <boost/detail/atomic_count.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
int main() int main()
{ {

View File

@@ -19,7 +19,7 @@ int main()
#else #else
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <memory> #include <memory>
struct X struct X

View File

@@ -0,0 +1,18 @@
# Copyright 2018, 2019 Peter Dimov
# Distributed under the Boost Software License, Version 1.0.
# See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt
cmake_minimum_required(VERSION 3.5...3.16)
project(cmake_subdir_test LANGUAGES CXX)
find_package(boost_smart_ptr REQUIRED)
find_package(boost_core REQUIRED)
add_executable(quick ../quick.cpp)
target_link_libraries(quick Boost::smart_ptr Boost::core)
enable_testing()
add_test(quick quick)
add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} --output-on-failure -C $<CONFIG>)

View File

@@ -2,7 +2,7 @@
# Distributed under the Boost Software License, Version 1.0. # Distributed under the Boost Software License, Version 1.0.
# See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt # See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt
cmake_minimum_required(VERSION 3.5) cmake_minimum_required(VERSION 3.5...3.16)
project(cmake_subdir_test LANGUAGES CXX) project(cmake_subdir_test LANGUAGES CXX)
@@ -11,7 +11,6 @@ add_subdirectory(../../../assert boostorg/assert)
add_subdirectory(../../../config boostorg/config) add_subdirectory(../../../config boostorg/config)
add_subdirectory(../../../core boostorg/core) add_subdirectory(../../../core boostorg/core)
add_subdirectory(../../../move boostorg/move) add_subdirectory(../../../move boostorg/move)
add_subdirectory(../../../predef boostorg/predef)
add_subdirectory(../../../static_assert boostorg/static_assert) add_subdirectory(../../../static_assert boostorg/static_assert)
add_subdirectory(../../../throw_exception boostorg/throw_exception) add_subdirectory(../../../throw_exception boostorg/throw_exception)
add_subdirectory(../../../type_traits boostorg/type_traits) add_subdirectory(../../../type_traits boostorg/type_traits)

View File

@@ -11,7 +11,7 @@
#include <boost/pointer_cast.hpp> #include <boost/pointer_cast.hpp>
#include <boost/config.hpp> #include <boost/config.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/get_pointer.hpp> #include <boost/get_pointer.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>

View File

@@ -14,7 +14,7 @@
#include <boost/enable_shared_from_this.hpp> #include <boost/enable_shared_from_this.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp> #include <boost/weak_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/config.hpp> #include <boost/config.hpp>
#include <memory> #include <memory>
#include <string> #include <string>

View File

@@ -14,7 +14,7 @@
#include <boost/enable_shared_from_this.hpp> #include <boost/enable_shared_from_this.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
// //

View File

@@ -11,7 +11,7 @@
#include <boost/enable_shared_from_this.hpp> #include <boost/enable_shared_from_this.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
// //

View File

@@ -9,7 +9,7 @@
// //
#include <boost/shared_array.hpp> #include <boost/shared_array.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
struct deleter struct deleter
{ {

View File

@@ -9,7 +9,7 @@
// //
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
struct deleter struct deleter
{ {

View File

@@ -26,7 +26,7 @@
// http://www.boost.org/LICENSE_1_0.txt) // http://www.boost.org/LICENSE_1_0.txt)
// //
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/intrusive_ptr.hpp> #include <boost/intrusive_ptr.hpp>
#include <boost/detail/atomic_count.hpp> #include <boost/detail/atomic_count.hpp>
#include <boost/config.hpp> #include <boost/config.hpp>

View File

@@ -26,7 +26,7 @@
// http://www.boost.org/LICENSE_1_0.txt) // http://www.boost.org/LICENSE_1_0.txt)
// //
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/intrusive_ptr.hpp> #include <boost/intrusive_ptr.hpp>
#include <boost/detail/atomic_count.hpp> #include <boost/detail/atomic_count.hpp>
#include <boost/config.hpp> #include <boost/config.hpp>

View File

@@ -33,7 +33,7 @@
#include <cstddef> #include <cstddef>
#include <boost/smart_ptr/intrusive_ref_counter.hpp> #include <boost/smart_ptr/intrusive_ref_counter.hpp>
#include <boost/intrusive_ptr.hpp> #include <boost/intrusive_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
namespace N1 { namespace N1 {

View File

@@ -8,7 +8,7 @@
// See accompanying file LICENSE_1_0.txt or copy at // See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt // http://www.boost.org/LICENSE_1_0.txt
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/intrusive_ptr.hpp> #include <boost/intrusive_ptr.hpp>
// //

View File

@@ -10,7 +10,7 @@
#include <boost/intrusive_ptr.hpp> #include <boost/intrusive_ptr.hpp>
#include <boost/functional/hash.hpp> #include <boost/functional/hash.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
class base class base
{ {

View File

@@ -9,7 +9,7 @@
// //
#include <boost/smart_ptr/local_shared_ptr.hpp> #include <boost/smart_ptr/local_shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
struct X struct X
{ {

View File

@@ -11,7 +11,7 @@
#include <boost/smart_ptr/local_shared_ptr.hpp> #include <boost/smart_ptr/local_shared_ptr.hpp>
#include <boost/weak_ptr.hpp> #include <boost/weak_ptr.hpp>
#include <boost/enable_shared_from_this.hpp> #include <boost/enable_shared_from_this.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <memory> #include <memory>
#include <utility> #include <utility>

View File

@@ -11,7 +11,7 @@
#include <boost/smart_ptr/local_shared_ptr.hpp> #include <boost/smart_ptr/local_shared_ptr.hpp>
#include <boost/weak_ptr.hpp> #include <boost/weak_ptr.hpp>
#include <boost/enable_shared_from_this.hpp> #include <boost/enable_shared_from_this.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <memory> #include <memory>
#include <utility> #include <utility>

View File

@@ -5,7 +5,7 @@
// Distributed under the Boost Software License, Version 1.0. // Distributed under the Boost Software License, Version 1.0.
#include <boost/detail/lightweight_thread.hpp> #include <boost/detail/lightweight_thread.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/smart_ptr/detail/atomic_count.hpp> #include <boost/smart_ptr/detail/atomic_count.hpp>
boost::detail::atomic_count count( 0 ); boost::detail::atomic_count count( 0 );

View File

@@ -8,7 +8,7 @@ Distributed under the Boost Software License, Version 1.0.
#include <boost/config.hpp> #include <boost/config.hpp>
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) && \ #if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) && \
!defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/smart_ptr/make_local_shared.hpp> #include <boost/smart_ptr/make_local_shared.hpp>
class type { class type {

View File

@@ -8,7 +8,7 @@ Distributed under the Boost Software License, Version 1.0.
#include <boost/config.hpp> #include <boost/config.hpp>
#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) && \ #if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) && \
!defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) !defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES)
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/smart_ptr/make_local_shared.hpp> #include <boost/smart_ptr/make_local_shared.hpp>
int main() int main()

View File

@@ -5,7 +5,7 @@ Copyright 2012-2015 Glen Joseph Fernandes
Distributed under the Boost Software License, Version 1.0. Distributed under the Boost Software License, Version 1.0.
(http://www.boost.org/LICENSE_1_0.txt) (http://www.boost.org/LICENSE_1_0.txt)
*/ */
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/smart_ptr/make_shared.hpp> #include <boost/smart_ptr/make_shared.hpp>
class type { class type {

View File

@@ -5,7 +5,7 @@ Copyright 2012-2015 Glen Joseph Fernandes
Distributed under the Boost Software License, Version 1.0. Distributed under the Boost Software License, Version 1.0.
(http://www.boost.org/LICENSE_1_0.txt) (http://www.boost.org/LICENSE_1_0.txt)
*/ */
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/smart_ptr/make_shared.hpp> #include <boost/smart_ptr/make_shared.hpp>
int main() int main()

View File

@@ -6,7 +6,7 @@
// See accompanying file LICENSE_1_0.txt or copy at // See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt // http://www.boost.org/LICENSE_1_0.txt
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/make_shared.hpp> #include <boost/make_shared.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/enable_shared_from_this.hpp> #include <boost/enable_shared_from_this.hpp>

View File

@@ -9,7 +9,7 @@
// See accompanying file LICENSE_1_0.txt or copy at // See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt // http://www.boost.org/LICENSE_1_0.txt
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/make_shared.hpp> #include <boost/make_shared.hpp>
#include <boost/move/core.hpp> #include <boost/move/core.hpp>
#include <boost/move/utility_core.hpp> #include <boost/move/utility_core.hpp>

View File

@@ -8,7 +8,7 @@
// See accompanying file LICENSE_1_0.txt or copy at // See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt // http://www.boost.org/LICENSE_1_0.txt
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/make_shared.hpp> #include <boost/make_shared.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>

View File

@@ -6,7 +6,7 @@
// See accompanying file LICENSE_1_0.txt or copy at // See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt // http://www.boost.org/LICENSE_1_0.txt
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/make_shared.hpp> #include <boost/make_shared.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp> #include <boost/weak_ptr.hpp>

View File

@@ -7,7 +7,7 @@ Distributed under the Boost Software License, Version 1.0.
*/ */
#include <boost/config.hpp> #include <boost/config.hpp>
#if !defined(BOOST_NO_CXX11_SMART_PTR) #if !defined(BOOST_NO_CXX11_SMART_PTR)
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/smart_ptr/make_unique.hpp> #include <boost/smart_ptr/make_unique.hpp>
class type { class type {

View File

@@ -7,7 +7,7 @@ Distributed under the Boost Software License, Version 1.0.
*/ */
#include <boost/config.hpp> #include <boost/config.hpp>
#if !defined(BOOST_NO_CXX11_SMART_PTR) #if !defined(BOOST_NO_CXX11_SMART_PTR)
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/smart_ptr/make_unique.hpp> #include <boost/smart_ptr/make_unique.hpp>
class type { class type {

View File

@@ -7,7 +7,7 @@ Distributed under the Boost Software License, Version 1.0.
*/ */
#include <boost/config.hpp> #include <boost/config.hpp>
#if !defined(BOOST_NO_CXX11_SMART_PTR) #if !defined(BOOST_NO_CXX11_SMART_PTR)
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/smart_ptr/make_unique.hpp> #include <boost/smart_ptr/make_unique.hpp>
class type { class type {

View File

@@ -7,7 +7,7 @@ Distributed under the Boost Software License, Version 1.0.
*/ */
#include <boost/config.hpp> #include <boost/config.hpp>
#if !defined(BOOST_NO_CXX11_SMART_PTR) #if !defined(BOOST_NO_CXX11_SMART_PTR)
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/smart_ptr/make_unique.hpp> #include <boost/smart_ptr/make_unique.hpp>
class type { class type {

View File

@@ -7,7 +7,7 @@ Distributed under the Boost Software License, Version 1.0.
*/ */
#include <boost/config.hpp> #include <boost/config.hpp>
#if !defined(BOOST_NO_CXX11_SMART_PTR) #if !defined(BOOST_NO_CXX11_SMART_PTR)
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/smart_ptr/make_unique.hpp> #include <boost/smart_ptr/make_unique.hpp>
class type { class type {

View File

@@ -7,7 +7,7 @@ Distributed under the Boost Software License, Version 1.0.
*/ */
#include <boost/config.hpp> #include <boost/config.hpp>
#if !defined(BOOST_NO_CXX11_SMART_PTR) #if !defined(BOOST_NO_CXX11_SMART_PTR)
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/smart_ptr/make_unique.hpp> #include <boost/smart_ptr/make_unique.hpp>
class type { class type {

View File

@@ -7,7 +7,7 @@ Distributed under the Boost Software License, Version 1.0.
*/ */
#include <boost/config.hpp> #include <boost/config.hpp>
#if !defined(BOOST_NO_CXX11_SMART_PTR) #if !defined(BOOST_NO_CXX11_SMART_PTR)
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/smart_ptr/make_unique.hpp> #include <boost/smart_ptr/make_unique.hpp>
struct type { struct type {

View File

@@ -11,7 +11,7 @@
// http://www.boost.org/LICENSE_1_0.txt) // http://www.boost.org/LICENSE_1_0.txt)
// //
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/smart_ptr/owner_less.hpp> #include <boost/smart_ptr/owner_less.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp> #include <boost/weak_ptr.hpp>

View File

@@ -17,7 +17,7 @@
#include <boost/scoped_ptr.hpp> #include <boost/scoped_ptr.hpp>
#include <boost/get_pointer.hpp> #include <boost/get_pointer.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
namespace namespace
{ {

View File

@@ -9,7 +9,7 @@
// //
#include <boost/shared_array.hpp> #include <boost/shared_array.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <cstddef> #include <cstddef>
#include <memory> #include <memory>

View File

@@ -16,7 +16,7 @@
#include <boost/smart_ptr/enable_shared_from_raw.hpp> #include <boost/smart_ptr/enable_shared_from_raw.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
// //

View File

@@ -12,7 +12,7 @@
#include <boost/smart_ptr/enable_shared_from_raw.hpp> #include <boost/smart_ptr/enable_shared_from_raw.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp> #include <boost/weak_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/config.hpp> #include <boost/config.hpp>
#include <memory> #include <memory>
#include <string> #include <string>

View File

@@ -15,7 +15,7 @@
#include <boost/smart_ptr/enable_shared_from_raw.hpp> #include <boost/smart_ptr/enable_shared_from_raw.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
// //

View File

@@ -12,7 +12,7 @@
#include <boost/smart_ptr/enable_shared_from_raw.hpp> #include <boost/smart_ptr/enable_shared_from_raw.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
// //

View File

@@ -17,7 +17,7 @@
#include <boost/smart_ptr/enable_shared_from_raw.hpp> #include <boost/smart_ptr/enable_shared_from_raw.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp> #include <boost/weak_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <memory> #include <memory>
class X: public boost::enable_shared_from_raw class X: public boost::enable_shared_from_raw

View File

@@ -25,7 +25,7 @@
#include <boost/enable_shared_from_this.hpp> #include <boost/enable_shared_from_this.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
// //

View File

@@ -9,7 +9,7 @@
// http://www.boost.org/LICENSE_1_0.txt) // http://www.boost.org/LICENSE_1_0.txt)
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <utility> #include <utility>

View File

@@ -9,7 +9,7 @@
// http://www.boost.org/LICENSE_1_0.txt) // http://www.boost.org/LICENSE_1_0.txt)
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <memory> #include <memory>
#include <cstddef> #include <cstddef>

View File

@@ -11,7 +11,7 @@
// http://www.boost.org/LICENSE_1_0.txt // http://www.boost.org/LICENSE_1_0.txt
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <memory> #include <memory>
#include <cstddef> #include <cstddef>

View File

@@ -9,7 +9,7 @@
// http://www.boost.org/LICENSE_1_0.txt) // http://www.boost.org/LICENSE_1_0.txt)
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <memory> #include <memory>
#include <cstddef> #include <cstddef>

View File

@@ -9,7 +9,7 @@
// http://www.boost.org/LICENSE_1_0.txt // http://www.boost.org/LICENSE_1_0.txt
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <memory> #include <memory>
#include <cstddef> #include <cstddef>

View File

@@ -28,7 +28,7 @@
// http://www.boost.org/LICENSE_1_0.txt) // http://www.boost.org/LICENSE_1_0.txt)
// //
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp> #include <boost/weak_ptr.hpp>

View File

@@ -8,7 +8,7 @@
// See accompanying file LICENSE_1_0.txt or copy at // See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt // http://www.boost.org/LICENSE_1_0.txt
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
// //

View File

@@ -9,7 +9,7 @@
// //
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <utility> #include <utility>
#if !defined( BOOST_NO_CXX11_RVALUE_REFERENCES ) #if !defined( BOOST_NO_CXX11_RVALUE_REFERENCES )

View File

@@ -9,7 +9,7 @@
// //
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
struct X struct X
{}; {};

View File

@@ -9,7 +9,7 @@
// //
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#if !defined( BOOST_NO_CXX11_RVALUE_REFERENCES ) #if !defined( BOOST_NO_CXX11_RVALUE_REFERENCES )

View File

@@ -9,7 +9,7 @@
// //
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
struct X struct X
{ {

View File

@@ -28,7 +28,7 @@
// http://www.boost.org/LICENSE_1_0.txt) // http://www.boost.org/LICENSE_1_0.txt)
// //
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp> #include <boost/weak_ptr.hpp>

View File

@@ -37,7 +37,7 @@
#include <boost/smart_ptr.hpp> #include <boost/smart_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <iostream> #include <iostream>
#include <set> #include <set>

View File

@@ -9,7 +9,7 @@
// //
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
struct X struct X
{ {

View File

@@ -11,7 +11,7 @@
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp> #include <boost/weak_ptr.hpp>
#include <boost/enable_shared_from_this.hpp> #include <boost/enable_shared_from_this.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <memory> #include <memory>
#include <utility> #include <utility>

View File

@@ -11,7 +11,7 @@
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp> #include <boost/weak_ptr.hpp>
#include <boost/enable_shared_from_this.hpp> #include <boost/enable_shared_from_this.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <memory> #include <memory>
#include <utility> #include <utility>

View File

@@ -9,7 +9,7 @@
// http://www.boost.org/LICENSE_1_0.txt // http://www.boost.org/LICENSE_1_0.txt
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/memory_order.hpp> #include <boost/memory_order.hpp>

View File

@@ -10,7 +10,7 @@
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/enable_shared_from_this.hpp> #include <boost/enable_shared_from_this.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/move/unique_ptr.hpp> #include <boost/move/unique_ptr.hpp>
#include <boost/type_traits/remove_reference.hpp> #include <boost/type_traits/remove_reference.hpp>
#include <memory> #include <memory>

View File

@@ -9,7 +9,7 @@
// //
#include <boost/config.hpp> #include <boost/config.hpp>
#include <boost/detail/workaround.hpp> #include <boost/config/workaround.hpp>
#define HAVE_CONSTEXPR_INIT #define HAVE_CONSTEXPR_INIT

View File

@@ -9,7 +9,7 @@
// //
#include <boost/config.hpp> #include <boost/config.hpp>
#include <boost/detail/workaround.hpp> #include <boost/config/workaround.hpp>
#define HAVE_CONSTEXPR_INIT #define HAVE_CONSTEXPR_INIT

View File

@@ -8,7 +8,7 @@
// See accompanying file LICENSE_1_0.txt or copy at // See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt // http://www.boost.org/LICENSE_1_0.txt
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <boost/smart_ptr/detail/sp_convertible.hpp> #include <boost/smart_ptr/detail/sp_convertible.hpp>
// //

25
test/sp_guides_test.cpp Normal file
View File

@@ -0,0 +1,25 @@
// Copyright 2020 Peter Dimov
// Distributed under the Boost Software License, Version 1.0.
// https://www.boost.org/LICENSE_1_0.txt
#if defined(__cpp_deduction_guides)
#include <boost/shared_ptr.hpp>
#include <boost/weak_ptr.hpp>
int main()
{
boost::shared_ptr<int> p1( new int );
boost::weak_ptr<int> p2( p1 );
boost::shared_ptr p3( p2 );
}
#else
#include <boost/config/pragma_message.hpp>
BOOST_PRAGMA_MESSAGE( "Skipping test because __cpp_deduction_guides is not defined" )
int main() {}
#endif

23
test/sp_guides_test2.cpp Normal file
View File

@@ -0,0 +1,23 @@
// Copyright 2020 Peter Dimov
// Distributed under the Boost Software License, Version 1.0.
// https://www.boost.org/LICENSE_1_0.txt
#if defined(__cpp_deduction_guides)
#include <boost/shared_ptr.hpp>
#include <memory>
int main()
{
boost::shared_ptr p2( std::unique_ptr<int>( new int ) );
}
#else
#include <boost/config/pragma_message.hpp>
BOOST_PRAGMA_MESSAGE( "Skipping test because __cpp_deduction_guides is not defined" )
int main() {}
#endif

View File

@@ -10,7 +10,7 @@
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/functional/hash.hpp> #include <boost/functional/hash.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
int main() int main()
{ {

View File

@@ -10,7 +10,7 @@
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/functional/hash.hpp> #include <boost/functional/hash.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
int main() int main()
{ {

View File

@@ -10,7 +10,7 @@
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/functional/hash.hpp> #include <boost/functional/hash.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
int main() int main()
{ {

View File

@@ -11,7 +11,7 @@
#if defined( WIN32 ) || defined( _WIN32 ) || defined( __WIN32__ ) || defined( __CYGWIN__ ) #if defined( WIN32 ) || defined( _WIN32 ) || defined( __WIN32__ ) || defined( __CYGWIN__ )
#include <boost/smart_ptr/detail/sp_interlocked.hpp> #include <boost/smart_ptr/detail/sp_interlocked.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#ifndef __LP64__ #ifndef __LP64__

View File

@@ -10,7 +10,7 @@
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/smart_ptr/detail/sp_nullptr_t.hpp> #include <boost/smart_ptr/detail/sp_nullptr_t.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <cstddef> #include <cstddef>
#include <memory> #include <memory>

View File

@@ -10,7 +10,7 @@
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
// //

View File

@@ -10,7 +10,7 @@
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
// //

View File

@@ -10,7 +10,7 @@
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
// //

View File

@@ -10,7 +10,7 @@
#include <boost/shared_ptr.hpp> #include <boost/shared_ptr.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
// //

View File

@@ -9,7 +9,7 @@
// //
#include <boost/smart_ptr/detail/sp_typeinfo_.hpp> #include <boost/smart_ptr/detail/sp_typeinfo_.hpp>
#include <boost/detail/lightweight_test.hpp> #include <boost/core/lightweight_test.hpp>
#include <iostream> #include <iostream>
int main() int main()

Some files were not shown because too many files have changed in this diff Show More