Platform | File | SHA256 Hash | |
---|---|---|---|
Unix | boost_1_65_0.tar.bz2 | ea26712742e2fb079c2a566a31f3266973b76e38222b9f88b387e3c8b2f9902c ea26712742....c8b2f9902c ea267....9902c | |
boost_1_65_0.tar.gz | 8a142d33ab4b4ed0de3abea3280ae3b2ce91c48c09478518c73e5dd2ba8f20aa 8a142d33ab....d2ba8f20aa 8a142....f20aa | ||
Windows | boost_1_65_0.7z | 4873d8f3506fd8d76e2eadcf0ace83b258010fc268a4d974361af7abad5448f5 4873d8f350....abad5448f5 4873d....448f5 | |
boost_1_65_0.zip | f3f5c37be45eb6516c95cd147d8aa4abb9b52121fc3eccc1fc65c4af0cf48592 f3f5c37be4....af0cf48592 f3f5c....48592 | ||
Windows (Binary) | boost_1_65_0-bin-msvc-all-32-64.7z | 8807e3d5c1861ef65079aa10b9d17a4d6ad9f2686ddbe11a7022e42d5dc5cb36 8807e3d5c1....2d5dc5cb36 8807e....5cb36 | |
boost_1_65_0-msvc-10.0-32.exe | 8496cd0e374389f7ff1e76ba2fb42cdd56398738d96947a69564d5bfec519bfe 8496cd0e37....bfec519bfe 8496c....19bfe | ||
boost_1_65_0-msvc-10.0-64.exe | 84b7b686965530649653e9e91f25e079c3b6765ec3e2e87fefdaf00b6adaea09 84b7b68696....0b6adaea09 84b7b....aea09 | ||
boost_1_65_0-msvc-11.0-32.exe | 1a135839feb12d9cda54ba0c4cca9561f04748f75ad13949da8f415770233b25 1a135839fe....5770233b25 1a135....33b25 | ||
boost_1_65_0-msvc-11.0-64.exe | 160525e68cfb7498dde4b071f486264916ce78c5ac05006a99ce2ca7bc726076 160525e68c....a7bc726076 16052....26076 | ||
boost_1_65_0-msvc-12.0-32.exe | 4ade856765375570e048144216d44578ea3335254100c2ff0a976f8460075ad7 4ade856765....8460075ad7 4ade8....75ad7 | ||
boost_1_65_0-msvc-12.0-64.exe | 3c4d1326389256d182181fa008dec4787a14c4e4a0c5c9ba3ccd3f22576048a5 3c4d132638....22576048a5 3c4d1....048a5 | ||
boost_1_65_0-msvc-14.0-32.exe | 7713b49fea372257f860e3dea22ddc105cb5acc64a85aee4d9063319675d1117 7713b49fea....19675d1117 7713b....d1117 | ||
boost_1_65_0-msvc-14.0-64.exe | ab0a5ff46d68f99dea291204c961e841b0ae2eed3dc6f14d5e86d68afbc52c61 ab0a5ff46d....8afbc52c61 ab0a5....52c61 | ||
boost_1_65_0-msvc-14.1-32.exe | 6363273238679e03ef54060bc49513194202e1f23d7585678ccc083504db4a52 6363273238....3504db4a52 63632....b4a52 | ||
boost_1_65_0-msvc-14.1-64.exe | 2b2ffab75dec3f5d6633874e47ae16505a6766ed6f442cbaa52376c65b48eb17 2b2ffab75d....c65b48eb17 2b2ff....8eb17 | ||
boost_1_65_0-msvc-8.0-32.exe | 0405486eae642992b0bc321403b22f36443aa7a135ba175be7e5fbfdafdb2c6f 0405486eae....fdafdb2c6f 04054....b2c6f | ||
boost_1_65_0-msvc-8.0-64.exe | d4cb12a132c198adf0515accd002c4293cb79bd4e4f013ab2323f7a840aaaa6f d4cb12a132....a840aaaa6f d4cb1....aaa6f | ||
boost_1_65_0-msvc-9.0-32.exe | fd451325396674978ec3a35407a134a174e81bf1421efcb5258433bb275261c2 fd45132539....bb275261c2 fd451....261c2 | ||
boost_1_65_0-msvc-9.0-64.exe | 4218300895f890c1d83cb28fbddbd99340d822333a1fb7d9d26a77bbb33a6ca2 4218300895....bbb33a6ca2 42183....a6ca2 |
This is an older version of Boost and was released in 2017. The current version is 1.88.0.
Version 1.65.0
August 21st, 2017 20:50 GMT
Third Party Downloads
Known Issues
These are patches from library authors which were found too late to be fixed in the release. Be careful as they have not been through the normal testing process.
Combined patch for fixes to issues: boost_1_65_0.patch.
Use patch -p1 < boost_1_65_0.patch
from the root of the boost repo to
apply. Or you can apply the patches individually below.
- Context and Fiber don't return continuations when they should:
-
Thread: Bug in
boost::condition_variable
on Windows:
New Libraries
- PolyCollection:
- Fast containers of polymorphic objects, from Joaquín M López Muñoz.
- Stacktrace:
- Gather, store, copy and print backtraces, from Antony Polukhin. Note: Library has issue with MinGW and may produce empty backtraces with that compiler.
Removed Libraries
- TR1
Updated Libraries
-
Asio:
- Changed to require g++ versions >= 4.7 to use standard atomics, to fix a linker error when using g++ 4.6 (#13121).
-
Enabled use of
constexpr
and variadic templates with recent MSVC versions. - Fixed a race condition in the Linux epoll backend, which may occur when a socket or descriptor is closed while another thread is blocked on epoll.
-
Eliminated use of deprecated
auto_ptr
. -
Fixed misplaced use of
asio_handler_is_continuation
result in reactiveasync_accept
implementation. -
Changed to use
poll.h
rather thansys/poll.h
on some modern POSIX platforms (#12419). - Fixed MSVC intellisense detection.
-
Disabled use of the
__thread
keyword extension for android/clang/x86 targets.
-
Context:
-
Improvements:
- call/cc supports ucontext-API (swapcontext)
- call/cc supports Windows-Fiber-API
- call/cc supports on demand growing (segmented/split) stacks
-
Bugfixes:
- #12719: context test cases and examples segmentation fault when built with mingw-w64 toolchain
- #52: Failing to build callcc test with g++-4.9
-
important:
- required bug fix 420554fe9ac01482990e8ae314f4f7ba81010c9a not included in 1.65
-
Improvements:
-
Config:
-
Added
BOOST_NO_CXX11_POINTER_TRAITS
,BOOST_NO_CXX17_FOLD_EXPRESSIONS
,BOOST_NO_CXX17_INLINE_VARIABLES
,BOOST_NO_CXX17_STRUCTURED_BINDINGS
defect detection. - BOOST_FALLTHROUGH support for GCC 7 and above. (Glen Fernandes)
-
Added
-
Core:
-
Implemented
pointer_traits
for C++03 and higher, that implements P0653r0 (Glen Fernandes). This implementation is now used by Align, Circular Buffer, Fiber, Geometry, among other libraries. -
Added
BOOST_TEST_GT
andBOOST_TEST_GE
to Lightweight Test.
-
Implemented
-
Coroutine2:
- supports ucontext-API (swapcontext)
- supports Windows-Fiber-API
- #13064: different behavior coroutine and coroutine2
-
DLL:
- Fix PE parsing on non Windows platforms.
-
Fiber:
-
Improvements:
- hardware transactional memory (Intel TSX) supported
- NUMA supported
- ucontext-API (swapcontext) supported
- Windows-Fiber-API supported
- on demand growing stacks
-
Bugfixes:
- #121: failing to build static lib with GCC 4.8 and C++11
- #123: assertion failure in schedule_from_remote
- #125: erratic crashes in testsuite
- #126: incorrect std::memory_order value in compare_exchange_strong?
-
important:
- required bug fix 63f1041f0e484e64dec437a0fa780ea2463abda2 not included in 1.65
-
Improvements:
-
Fusion:
-
MSVC 14.1 supports variadic containers, such as
fusion::vector
,fusion::deque
,fusion::map
,fusion::set
, andfusion::tuple
. (#12986)
-
MSVC 14.1 supports variadic containers, such as
-
Geometry:
-
Improvements:
- Add correct() overload taking area strategy
- Add is_convex() overload taking side strategy
- Add missing relational operations (covered_by, crosses, equals, etc.) for MultiPoint/AnyGeometry
- Solved issues:
-
Bugfixes:
- Fix is_valid which could return false for multipolygons where an interior ring touches another interior ring
- Fix is_valid which could return false for multipolygons where a polygon was located in an interior ring, all touching each other
- Fix union which could produce invalid results (for some cases, this needs to define BOOST_GEOMETRY_INCLUDE_SELF_TURNS)
- Fix intersection (idem), but some cases are still not yet valid
- Fix difference (idem), but some cases are still not yet valid
- Fix propagation of area strategy into the internals of various algorithms from intersection strategy
- Fix uninitialized variable in relate and reference to temporary in overlay
- Fix error in disjoint for geographic Segment/Box
- Fix handling of non-cartesian geometries in various algorithms
-
Improvements:
-
Hash:
-
Support for
char16_t
,char32_t
,u16string
,u32string
.
-
Support for
-
Log:
-
General changes:
- Improved compatibility with Solaris.
- See changelog for more details.
-
General changes:
-
Phoenix:
- Corrected some documentation. (PR#50)
-
phoenix::erase
with associative container returns iterator in C++11 mode. (#7423) -
std::set
andstd::multiset
should be worked with predefined lazy functions. (PR#52) -
Disable
phoenix::random_shuffle
in C++17. (PR#53) - Don't forward declare, include instead. (#11875)
-
Predef:
- Fix Intel C/C++ version 9999 detection to be 12.1.0.
-
Addition of
BOOST_PREDEF_WORKAROUND
andBOOST_PREDEF_TESTED_AT
macros for defect workarounds and detection. - Add ARM64 MSVC SIMD detection. (from Minmin Gong)
- Add detection of iOS simulator vs device as a platform choice. (from Ruslan Baratov)
- Fix MinGW incorrect header guard. (from Ruslan Baratov)
-
Program Options:
-
Support for storing values into
boost::optional
, thanks to Ed Catmur (#7495, PR#18) - Parsing of implicit options can now use the value from the next token. Since 1.59, unless the value of implicit option was specified in the same token as the option itself, the implicit value was used. That proved inconvenient, and now we again check the next token and use it as value if it's not an option itself. (#25)
-
Support for storing values into
-
Python:
-
eval()
,exec()
, andexec_statement()
now allowchar const *
arguments, in addition toboost::python::str
. -
The
boost::python::numeric
API has been removed, as it is being obsoleted byboost::python::numpy
. - Fix some build issues when using Python3 with MSVC.
-
-
Smart Pointers:
-
New class template
atomic_shared_ptr
, that provides thread-safe atomic pointer operations overshared_ptr
. (Peter Dimov) -
New class template
local_shared_ptr
, where the reference count is updated with non-atomic operations. (Peter Dimov) -
More optimizations in
allocate_shared
andmake_shared
for arrays. (Glen Fernandes) - Documentation has been completely rewritten in Asciidoc format.
-
New class template
-
Test:
- Boost.test v3.6 see the Change log section for more details.
-
New feature:
- C++17 compatibility (tested on VS2017), thanks to Daniela Engert
-
Direct comparison of C-arrays in
BOOST_TEST
-
Better global fixtures mechanism, and spitting of responsibilities
with
BOOST_TEST_GLOBAL_FIXTURE
for global fixtures andBOOST_TEST_GLOBAL_CONFIGURATION
for global initialization (compile time configuration). -
Improved support for fixtures (
setup
/teardown
member function) which enables better teardown time checks
-
Breaking changes
- Some API changes for the loggers
-
Deprecating
BOOST_GLOBAL_FIXTURE
in favor ofBOOST_TEST_GLOBAL_FIXTURE
andBOOST_TEST_GLOBAL_CONFIGURATION
(see above)
- Bug fixes
-
Thread:
-
Important Regression on Windows:
- #130 windows: Bug in boost::condition_variable on Windows Please, merge these two patches
- https://github.com/boostorg/thread/commit/fdc0cbcd8ce8f34a19c7cdaf6f1fa679f0a49657
- https://github.com/boostorg/thread/commit/395e3d786bc1dce9c60eb84da85f5845a2c1fb3d
-
Bug fixes
- #6787 boost::thread::sleep() hangs if system time is rolled back
- #12519 boost::thread::try_join_for does not return after timeout
- #12874 future<> extension constructor must be under BOOST_THREAD_PROVIDES_FUTURE_UNWRAP
- #12888 Linking with boost thread does not work on mingw/gcc 4.4
- #12958 sync_bounded_queue::wait_pull_front( lve ) might throw
- #13077 Linking to static 64bit libboost_thread fails DLL initialization
- #13155 log doesn't build on a system with pthreads
- #121 on_tls_prepare is broken under VS2017
-
Important Regression on Windows:
- TypeIndex:
-
Typeof:
- Fix compilation error with clang-cl ticket 11821.
-
Unordered:
-
Use the same data structure for
unordered_set
andunordered_multiset
, and forunordered_map
andunordered_multimap
. This is required for C++17, so that nodes can be merged and extracted between compatible containers. - Add deprecated attributes to long deprecated functions.
-
Improved use of
allocator_traits
construct
anddestroy
on C++11 compilers, using piecewise pair construction when appropriate. - Fewer workarounds on newer Oracle compilers.
- Avoid dereferencing pointers to uninitialized memory (PR #5).
-
Use the same data structure for
- Utility:
-
Variant:
-
r-value overload for
boost::get
was added by Albert Sverdlov #13018. -
Missing include fro
<boost/variant/polymorphic_get.hpp>
header was added by Adam Badura #13037. -
boost::make_variant_over
was fixed and now works with views and other Forward Sequences (thanks to Mikhail Maksimov for the fix) #8554, #10041, PR#35.
-
r-value overload for
Compilers Tested
Boost's primary test compilers are:
-
Linux:
- Clang: 3.0, 3.8.1
- Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 3.8.1
- Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.8.1, 3.9.1, 4.0.1
- Clang, C++1z: 4.0.0
- GCC: 4.4.7, 4.5.3, 4.6.3, 4.7.2, 5.4.0, 7.1.0
- GCC, C++11: 4.4.7, 4.7.2, 4.7.3, 4.8.5, 4.9.4, 5.4.0, 7.1.0
- GCC, C++14: 5.4.0, 5.4.1, 6.3.0, 7.1.0
- GCC, C++17: 7.1.0
- GCC, C++1z: 6.3.0
- Intel: 16.0, 17.0
- Intel, C++11: 16.0, 17.0
- Intel, C++14: 16.0
-
OS X:
- Clang: 8.1.0
- Clang, C++11: 8.1.0
- Clang, C++14: 8.1.0
-
Windows:
- GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
- GCC, C++11: 4.6.4, 4.7.3, 4.8.1
- GCC, C++14: 4.9.3, 5.1.0, 5.2.0, 5.3.0, 6.1.0
- Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
-
Android:
- Clang: 3.6, 3.7, 3.8
- GCC: 4.9, 5.4
- GCC, C++14: 6.2
-
FreeBSD:
- Clang: 3.8.0
- Clang, C++11: 3.8.0
- Clang, C++14: 3.8.0
- Clang, C++1z: 3.8.0
-
QNX:
- QCC, C++11: 4.7.3
-
SunOS:
- Oracle Solaris Studio: 12.5_next, 12.5
- Oracle Solaris Studio, C++11: 12.5_next, 12.5
Boost's additional test compilers include:
-
Linux:
- Clang: 3.0, 3.8.1
- Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 3.8.1
- Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.8.1, 3.9.1, 4.0.1
- Clang, C++1z: 4.0.0
- GCC: 4.4.7, 4.5.3, 4.6.3, 4.7.2, 5.4.0, 7.1.0
- GCC, C++11: 4.4.7, 4.7.2, 4.7.3, 4.8.5, 4.9.4, 5.4.0, 7.1.0
- GCC, C++14: 5.4.1, 6.2.0, 6.3.0, 7.1.0, 8.0.0
- GCC, C++17: 7.1.0
- GCC, C++1z: 6.3.0
- Intel: 17.0
- Intel, C++11: 16.0, 17.0
- Intel, C++14: 16.0
-
OS X:
- Clang: 8.1.0
- Clang, C++11: 8.1.0
- Clang, C++14: 8.1.0
- Clang, C++1z: 8.1.0
-
Windows:
- GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
- GCC, C++11: 4.6.4, 4.7.3, 4.8.1
- GCC, C++14: 4.9.3, 5.1.0, 5.2.0, 5.3.0, 6.1.0
- Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
-
Android:
- Clang: 3.6, 3.7, 3.8
- GCC: 4.9, 5.4
- GCC, C++14: 6.2
-
FreeBSD:
- Clang: 3.8.0
- Clang, C++11: 3.8.0
- Clang, C++14: 3.8.0
- Clang, C++1z: 3.8.0
-
SunOS:
- Oracle Solaris Studio: 12.5_next, 12.5
- Oracle Solaris Studio, C++11: 12.5_next, 12.5
Acknowledgements
Beman Dawes, Eric Niebler, Rene Rivera, Daniel James, Vladimir Prus and Marshall Clow managed this release.