Version 1.62.0
Version 1.62.0
September 28th, 2016 15:17 GMT
Platform | File | SHA256 Hash |
---|---|---|
unix | boost_1_62_0.tar.bz2 | 36c96b0f6155c98404091d8ceb48319a28279ca0333fba1ad8611eb90afb2ca0 |
boost_1_62_0.tar.gz | 440a59f8bc4023dbe6285c9998b0f7fa288468b889746b1ef00e8b36c559dce1 | |
windows | boost_1_62_0.7z | b91c2cda8bee73ea613130e19e72c9589e9ef0357c4c5cc5f7523de82cce11f7 |
boost_1_62_0.zip | 084b2e0638bbe0975a9e43e21bc9ceae33ef11377aecab3268a57cf41e405d4e |
Third Party Downloads
New Libraries
-
Fiber: Framework for userland-threads/fibers, from Oliver Kowalke.
-
QVM: Boost QVM is a generic library for working with quaternions, vectors and matrices of static size with the emphasis on 2, 3 and 4-dimensional operations needed in graphics, video games and simulation applications, from Emil Dotchevski.
Updated Libraries
-
Atomic:
-
Improved support for Oracle Studio and SPARC. The library now provides native atomic operations on SPARCv8+.
-
-
Circular Buffer:
-
Debug implementation is no longer used by default in debug mode. Debug implementation does not have the same thread safety guarantees as the normal (release) implementation or other containers. As a result of this change
BOOST_CB_DISABLE_DEBUG
macro is no longer used.BOOST_CB_ENABLE_DEBUG=1
should be defined instead to enable debug support. (#6277)
-
-
Container:
-
Fixed bugs:
-
Trac #12273: "static_vector max_size() and capacity() should be constant expressions". Added constant
static_vector<>::static_capacity
to use the configured capacity in constant expressions.
-
Revised noexcept expressions of default and move constructors in all containers.
-
Implemented C++17
insert_or_assign
/try_emplace
formap
andflat_map
. -
Implemented C++17
extract
/insert(node)
formap
,multimap
,set
,multiset
.
-
-
Coroutine:
-
deprecated in favour of Coroutine2
-
-
Coroutine2:
-
#12221 coroutine<>::push_type function starts without pushing
-
do not swallow exceptions thrown at coroutine<>::push_type construction
-
-
DLL:
-
Mangled symbols and classes loading was implemented by Klemens Morgenstern
-
Suppress a 'unused parameter' warning in detail::aggressive_ptr_cast pull-request 9
-
Allowed to query non-existant sections pull-request 32
-
More tests and docs
-
-
Functional/Forward:
-
Fix C++11 compile error.
-
-
Geometry:
-
Improvements:
-
Union: take care that output is valid (with some exceptions), also with self-tangent polygons or shared edges
-
SVG: support boost::variant of geometries
-
SVG: coordinates are now written as double (by default) to svg
-
Rename namespace concept to concepts to avoid conflicts with the newest compilers
-
New spherical intersection strategy used in relational and set operations for spherical and geographic Geometries (previously cartesian intersection strategy was used for all coordinate systems).
-
-
-
Intrusive:
-
Fixed bugs:
-
-
Lexical Cast:
-
Fix incorrect static assertion #11759
-
-
Log:
-
New features:
-
Added new tools for inter-process logging on a local machine. The implementation includes a resource name wrapper, an inter-process message queue and a sink backend.
-
Added a new character decorator called
max_size_decor
. The new decorator allows to limit the output of its adopted formatter up to the specified length.
-
-
Bug fixes:
-
Fixed that logging streams could retain formatting settings across different log records. (#12178)
-
-
See changelog for more details.
-
-
Math:
-
New Features:
-
Enabled all the special function code to work correctly with types whose precision can change at runtime: for example type
mpfr_float
from Boost.Multiprecision.
-
-
Patches:
-
Fix
tgamma_delta_ratio
for cases where the delta is small compared to the base. -
Fix misc GCC-4.4 test failures.
-
-
-
Optional:
-
Fixed Trac #12179.
-
-
Phoenix:
-
Fix compilation for MSVC 10. pull-request 18
-
Remove unused preprocessed files. pull-request 28
-
Fix erroneous doc for switch_ statement. #8156
-
Cleanup config unordered. pull-request 33
-
Suppress unused placeholder warnings.
-
Fix too few arguments error on binary math functions.
-
-
Test:
-
Boost.test v3.3 see the Change log section for more details.
-
New features
-
dataset driven test-cases have now a unique name and all sample tests of a dataset live inside the same test suite
-
Boost.test learned a new command line switch,
--logger
for setting a test logger as well as its parameter in one command -
Boost.test learned to have several loggers at the same time, each of which having their own log level and output stream
-
Boost.test learned a new logger,
JUNIT
, that is able to output Junit/xUnit compatible streams -
It is now possible to specify several test filters through the environment variable
BOOST_TEST_RUN_FILTERS
-
-
-
Thread:
-
#12102 condition_variable_fwd.hpp fails to compile when BOOST_THREAD_PROVIDES_INTERRUPTIONS is disabled
-
#12120 Performance improvement in thread/barrier.hpp
-
#12146 make_exceptional_future is not mentioned in the docs
-
#12202 shared_lock should be in shared_mutex header
-
#12371 boost thread/future.hpp fails to build
-
#88 fix typos in boost::upgrade_lock
-
#89 fix a bug in upgrade_to_unique_lock<>::operator=()
-
#90 fix a bug in try_lock_wrapper<>::operator=()
-
#91 Add shared_lock_guard to the included lock types
-
#92 Fixed compilation with MSVC-8.
-
#93 Fix variable shadowing warnings (Clang)
-
#94 fix bugs in boost::barrier
-
#95 fix a mistake in boost::completion_latch
-
#96 rename async_func.hpp to invoker.hpp.
-
#97 fix a mistake in sync_timed_queue<>::pull_until()
-
-
TypeIndex:
-
ctti_type_index
was made constexpr in C++14. Now it is possible to retrieve actual name of the type asconst char*
at compile time. So we can do a lot of interesting things at compile time: check namespace of a type, sort types according to their lexical representation, check that type is a template type and so on... A few examples were provided. -
Fixed issue with
noexcept
on MSVC in type names and issue with space in type name (pulled from klemens-morgenstern/develop) -
Fixed typos pull-request 7
-
Improved CI testing
-
-
Variant:
-
Fixed the issue with implicit conversion operator in C++11 #8555
-
Fixed comparisons when variant holds non-const reference #11751
-
Fixed noexcept for variant's move-assignment #11696
-
Fixed double quotes in includes #12057
-
Dropped BOOST_VARIANT_NO_REFERENCE_SUPPORT macro and dropped support for compilers without SFINAE #12250
-
Suppress implicit instantiation of MPL end iterator
-
Multiple minor fixes (typos, missing includes)
Compilers Tested
Boost's primary test compilers are:
-
Linux:
-
Clang: 3.0, 3.8.0
-
Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 3.8.0
-
Clang, C++14: 3.5, 3.6, 3.7, 3.8.0, 3.8.1, 3.9.0
-
GCC: 4.4.7, 4.5.3, 4.6.3, 4.7.2, 5.2.0, 6.1.1
-
GCC, C++11: 4.4.7, 4.7.2, 4.7.3, 4.8.5, 4.9.3, 5.2.0, 6.1.1
-
GCC, C++14: 5.2.0, 5.3.0, 5.4.1, 6.1.1
-
Intel: 16.0
-
Intel, C++11: 16.0
-
Intel, C++14: 16.0
-
-
Windows:
-
GCC, C++03, mingw: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0
-
GCC, C++11, mingw: 4.6.4, 4.7.3, 4.8.1
-
GCC, C++14, mingw: 6.1.0
-
Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0
-
-
Android:
-
Clang: 3.6, 3.7, 3.8
-
GCC: 4.9, 5.4, 6.1
-
-
FreeBSD:
-
Clang: 3.4.1, 3.7
-
GCC: 4.8.5, 5.4.0, 6.1.1
-
-
QNX:
-
QCC: 4.4.2
-
-
SunOS:
-
Oracle Solaris Studio: 12.5
-
Oracle Solaris Studio, C++11: 12.5
-
Boost's additional test compilers include:
-
Linux:
-
Clang: 3.0, 3.8
-
Clang, c++11: 3.0, 3.1, 3.2, 3.3, 3.4, 3.8
-
Clang, c++14: 3.5, 3.6, 3.7, 3.8, 3.9
-
GCC: 4.4.7, 4.5.3, 4.6.3, 4.7.2, 4.8.4, 5.2.0, 6.1.1
-
GCC, C++11: 4.4.7, 4.7.2, 4.7.3, 4.8.5, 4.9.3, 5.2.0, 6.1.1
-
GCC, C++14: 5.2.0, 5.3.0, 5.4.1, 6.1.1, 7.0.0 (experimental)
-
Intel: 16.0
-
Intel, C++11: 16.0
-
Intel, C++14: 16.0
-
-
OS X:
-
Apple Clang: 7.3.0
-
G++: 6.1.0
-
-
Windows:
-
Clang: 3.8.1
-
GCC, C++03, mingw: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0
-
GCC, C++11, mingw: 4.6.4, 4.7.3, 4.8.1
-
GCC, C++14, mingw: 4.9.3, 5.1.0, 5.2.0, 5.3.0, 6.1.0
-
GCC, cygwin: 5.4.0
-
Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0
-
-
Android:
-
Clang: 3.6, 3.7, 3.8
-
GCC: 4.9, 5.4, 6.1
-
-
FreeBSD:
-
Clang, C++11: 3.4.1, 3.7.0
-
GCC, C++11: 4.8.5. 5.4.0, 6.1.1
-
-
Haiku:
-
GCC, C++11: 5.4.0
-
-
QNX:
-
QCC: 4.4.2
-
-
SunOS:
-
Oracle Solaris Studio: 12.5
-
Oracle Solaris Studio, C++11: 12.5
-
Acknowledgements
Beman Dawes, Eric Niebler, Rene Rivera, Daniel James, Vladimir Prus and Marshall Clow managed this release.