Boost
Releases
arrow_drop_down
Prior Release (1.63.0)
December 22, 2016
Dependencies
There were 5 dependencies added (in 4 libraries) and 1 dependency removed (in 1 library) this release.
Platform File SHA256 Hash
Unix boost_1_63_0.tar.bz2 beae2....cb3b0
boost_1_63_0.tar.gz fe34a....7088b
Windows boost_1_63_0.7z 25db3....5f423
boost_1_63_0.zip 97ce6....cbe7b
Windows (Binary) boost_1_63_0-bin-msvc-all-32-64.7z a5483....7e1cb
boost_1_63_0-msvc-10.0-32.exe 9b3ae....a5a53
boost_1_63_0-msvc-10.0-64.exe 7ad1a....7a5ee
boost_1_63_0-msvc-11.0-32.exe a2486....00727
boost_1_63_0-msvc-11.0-64.exe 312bd....34240
boost_1_63_0-msvc-12.0-32.exe 819fd....dfc3e
boost_1_63_0-msvc-12.0-64.exe 297fb....ff809
boost_1_63_0-msvc-14.0-32.exe c5077....b34d9
boost_1_63_0-msvc-14.0-64.exe e0718....5dde2
boost_1_63_0-msvc-8.0-32.exe 37d30....3e13c
boost_1_63_0-msvc-8.0-64.exe a3ff8....8f0ee
boost_1_63_0-msvc-9.0-32.exe a9de1....7709c
boost_1_63_0-msvc-9.0-64.exe f0970....ae480

Version 1.63.0

December 26th, 2016 23:43 GMT

Documentation

Third Party Downloads

Post-release Patches

  • Atomic:
    • Using 64-bit atomic operations on 32-bit x86 with gcc versions older than 4.7 and compatible compilers can result in generation of incorrect code. This problem is fixed in this commit.

Updated Libraries

  • Atomic:
    • Added the static constant atomic<T>::is_always_lock_free for conformance with C++17. The constant indicates that the given specialization always provides lock-free implementation of atomic operations.
    • Improved support of Oracle Studio on x86 targets.
  • Container:
  • Context:
    • #11687 Xcode (Apple clang) and thread_local
    • #12114 context does not preserve fpu context on ios arm64 devices (fixed for other architecturs too)
    • #12411 fpu registers not preserved with O2 optimizations in Visual Studio (fixed for other architecturs too)
    • #12551 building boost on arm64 causes error: unknown directive
    • reduced signatur for ontop-functions
    • unit-test for private fcontext-API
    • performance-test for ucontext and fcontext fixed
  • Fiber:
    • unbounded_channel and bounded_channel marked as deprecated
    • new classes buffered_channel and unbuffered_channel
    • performance improved
  • Fusion:
    • Fixed fusion::vector buggy constructors (Thanks to Lee Clagett).
    • BOOST_FUSION_ADAPT* and BOOST_FUSION_DEFINE* now allow empty structures. (#6592)
    • BOOST_FUSION_DEFINE* allows move constructor and assignment. (#10099)
    • Adaptor for std::array (Thanks to Mateusz Łoskot). (#8241)
    • Fixed returning temporary variable warnings on MSVC.
  • Geometry:
    • Improvements:
      • Intersection: take care that output is valid (work in progres, not yet finished - but more is valid)
    • Solved tickets:
      • #12289 Avoid warning/compilation error for std::cout
      • #12412 Invalid result of covered_by() with geographic Points and Boxes
      • #12413 rtree::remove() not working properly with geographic Points
  • Hash:
    • Fixed some warnings.
  • Interprocess:
  • Intrusive:
  • Lexical Cast:
    • Fixed issue found by -fsanitize=undefined #21
  • Log:
    • General changes:
      • Removed the previously deprecated type_info_wrapper.
    • New features:
      • Added a way to access the current file name from the text file sink backend. The file name can be obtained with the get_current_file_name method.
    • Bug fixes:
      • Fixed compilation errors for Android API prior to version 21.
      • Streaming operators now take scalar types and enums by value. This allows to output static constants and bitfields directly into formatting stream and record stream. (#11998)
      • Fixed auto-detection of native syslog API. (#12600)
      • In UDP socket based syslog backend implementation, changed the syslog message format for better compliance with RFC3164.
      • File close handler installed in text file sink backend is no longer called if the file is not open yet.
    • See changelog for more details.
  • Metaparse:
    • Improved the implementation of BOOST_METAPARSE_STRING
      • The maximal string length limit has been increased to 2048
      • The maximal string length limit can be extended beyond 2048 by regenerating some of the Boost headers using a script (part of the library)
      • The string length limit can be changed within a compilation unit
  • Move:
    • Improved experimental adaptive sort algorithm performance
    • Activate BOOST_MOVE_FORCEINLINE
  • Optional:
    • Added two new in-place constructors. They work similarly to emplace() functions: they initialize the contained value by perfect-forwarding the obtained arguments. One constructor always initializes the contained value, the other based on a boolean condition.
    • Syntax o = {} now correctly un-initializes an optional, just like in std::optional.
    • Fixed optional<optional<T>&> initialization. (#12203)
    • Optional constructors are sfinae-friendly. This fixes interaction with std::tuple. (#12563)
  • Phoenix:
    • Most of modules now support C++11 variadic templates.
    • Fixed type deduction failure with result type.
    • Suppress unused warnings.
    • Fixed too few arguments error on binary math functions.
    • Added workarounds for older compiler.
  • Python:
    • Added (basic) support for C++11 (std::shared_ptr, std::unique_ptr)
    • Incorporated an extension API to wrap NumPy
    • Removed obsolete bits and pieces
  • Test:
    • Boost.test v3.4 see the Change log section for more details.
    • New feature: per_element and lexicographic modifiers of BOOST_TEST can also be applied to string comparison
    • Breaking change: colons that appear in test case names are replaced with underscores
    • Bug fixes
  • TypeIndex:
    • Added runtime_cast to the library as an emulation of dynamic_cast. Thanks to Chris Glover for the implementation. See runtime_cast reference for more info.
    • Internals of the CTTI were made more platform independant, due to change of the std::size_t type to unsigned int.
  • Units:
    • Fix inspection warnings
    • updated physico-chemical constants to CODATA 2014 values
    • define biot correctly as 10 Ampere
  • Unordered:
    • Fix an exception safety issue in assignment.
    • Use std::allocator_traits where available, and support modern style rebind (#12459).
    • Add some allocator aware constructors.
    • Use the hint iterator in emplace_hint.
    • Fixed some warnings.
    • See the changelog for more details.

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, 3.6, 3.7, 3.8.1
    • Clang, C++1z: 3.8.1
    • GCC: 4.4.7, 4.5.3, 4.6.3, 4.7.2, 5.2.0, 6.2.0
    • GCC, C++11: 4.4.7, 4.7.2, 4.7.3, 4.8.5, 4.9.3, 5.2.0, 6.1.1, 6.2.0
    • GCC, C++14: 5.2.0, 5.3.0, 6.1.1, 6.2.0
    • Intel: 16.0, 17.0
    • Intel, C++11: 16.0, 17.0
    • Intel, C++14: 16.0, 17.0
  • OS X:
    • Apple Clang: 7.0.2
    • Apple Clang, C++11: 7.0.2
  • 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: 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
  • Android:
    • Clang: 3.6, 3.7, 3.8
    • GCC: 4.9, 5.4, 6.2
  • 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.1
    • Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 3.8.1
    • Clang, C++14: 3.5, 3.6, 3.7, 3.8.1
    • Clang, C++1z: 3.8.1
    • GCC: 4.4.7, 4.5.3, 4.6.3, 4.7.2, 5.2.0, 6.1.1, 6.2.0
    • GCC, C++11: 4.4.7, 4.7.2, 4.7.3, 4.8.5, 4.9.3, 5.2.0, 6.1.1, 6.2.0
    • GCC, C++14: 5.2.0, 5.3.0, 6.1.1, 6.2.0, 7.0.0 (experimental)
    • GCC, C++1z: 6.1.1
    • Intel: 16.0, 17.0
    • Intel, C++11: 16.0, 17.0
    • Intel, C++14: 16.0, 17.0
  • OS X:
    • Apple Clang: 7.0.2
    • Apple Clang, C++11: 7.0.2
  • 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: 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
  • Android:
    • Clang: 3.6, 3.7, 3.8
    • GCC: 4.9, 5.4, 6.2
    • GCC,C++14: 6.1.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.

Contributors

Daniel James
Daniel James
Contributor
Rene Rivera
Rene Rivera
Contributor
John Maddock
John Maddock
Contributor
Oliver Kowalke
Oliver Kowalke
Contributor
Kohei Takahashi
Kohei Takahashi
Contributor
Andrey Semashev
Andrey Semashev
Contributor
Peter Dimov
Peter Dimov
Contributor
Jim Bosch
Jim Bosch
Contributor
Barend Gehrels
Barend Gehrels
Contributor
Ion Gaztañaga
Ion Gaztañaga
Contributor
Stefan Seefeld
Stefan Seefeld
Contributor
Raffi Enficiaud
Raffi Enficiaud
Contributor
Adam Wulkiewicz
Adam Wulkiewicz
Contributor
Ankit Daftery
Ankit Daftery
Contributor
Andrzej Krzemieński
Andrzej Krzemieński
Contributor
Edward Diener
Edward Diener
Contributor
zerotypos-found
zerotypos-found
Contributor
Beman Dawes
Beman Dawes
Contributor
K. Noel Belcourt
K. Noel Belcourt
Contributor
Marshall Clow
Marshall Clow
Contributor
Mateusz Łoskot
Mateusz Łoskot
Contributor
Joel de Guzman
Joel de Guzman
Contributor
Antony Polukhin
Antony Polukhin
Contributor
Chris Glover
Chris Glover
Contributor
Vicente J. Botet Escriba
Vicente J. Botet Escriba
Contributor
Jim Bosch
Jim Bosch
Contributor
Vladimir Batov
Vladimir Batov
Contributor
Emil Dotchevski
Emil Dotchevski
Contributor
Kartik Mohta
Kartik Mohta
Contributor
Jürgen Hunold
Jürgen Hunold
Contributor
Christoph Lassner
Christoph Lassner
Contributor
Tim Blechmann
Tim Blechmann
Contributor
Wei-Ming Yang
Wei-Ming Yang
Contributor
Murray Cumming
Murray Cumming
Contributor
Nikita Kniazev
Nikita Kniazev
Contributor
Chris Glover
Contributor
Karolin Varner
Karolin Varner
Contributor
E Kawashima
E Kawashima
Contributor
Sebastian Theophil
Sebastian Theophil
Contributor
Lee Clagett
Lee Clagett
Contributor
Tobias Germer
Contributor
Thomas Trummer
Thomas Trummer
Contributor
alfC
alfC
Contributor
Frank Mori Hess
Frank Mori Hess
Contributor
Norbert Wenzel
Norbert Wenzel
Contributor
Jared Grubb
Jared Grubb
Contributor
Toshiki Teramura
Toshiki Teramura
Contributor
Vladimir Prus
Vladimir Prus
Contributor
Neal D. Becker
Neal D. Becker
Contributor
Thomas Sondergaard
Contributor
akumta
akumta
Contributor
Marek Kurdej
Marek Kurdej
Contributor
Nat Goodspeed
Nat Goodspeed
Contributor
xaqq
xaqq
Contributor
Eric Niebler
Eric Niebler
Contributor
Marcel Raad
Marcel Raad
Contributor
Giel van Schijndel
Giel van Schijndel
Contributor
vmurashev
vmurashev
Contributor
Ilya Kolpakov
Ilya Kolpakov
Contributor
per
per
Contributor
Akira Takahashi
Akira Takahashi
Contributor
Anthony Leedom
Anthony Leedom
Contributor
Glen Fernandes
Glen Fernandes
Contributor
Dan Čermák
Dan Čermák
Contributor
Daniel Seither
Daniel Seither
Contributor
Alexander Lisianoi
Contributor
Per
Per
Contributor
Tolga HOŞGÖR
Tolga HOŞGÖR
Contributor
Philippe Daouadi
Philippe Daouadi
Contributor
Aaron Wishnick
Contributor
Felix Bruns
Felix Bruns
Contributor
Anthony
Anthony
Contributor
Philip Miller
Philip Miller
Contributor
Alain Miniussi
Alain Miniussi
Contributor
André Draszik
André Draszik
Contributor
Maël Valais
Maël Valais
Contributor
Patrick J. LoPresti
Patrick J. LoPresti
Contributor
Uskok
Uskok
Contributor
correaa
correaa
Contributor
Jakob Lykke Andersen
Jakob Lykke Andersen
Contributor
tbeu
tbeu
Contributor
tag
tag
Contributor
Takeshi Abe
Takeshi Abe
Contributor
barnabyrobson
barnabyrobson
Contributor
Sage Weil
Sage Weil
Contributor
Miro Knejp
Miro Knejp
Contributor
Steve Mc Gregor
Contributor
Florian Weik
Florian Weik
Contributor
Guillaume Dumont
Guillaume Dumont
Contributor
Romain Geissler
Romain Geissler
Contributor
Raphael Moreira Zinsly
Raphael Moreira Zinsly
Contributor
Benjamin Roland Buch
Benjamin Roland Buch
Contributor
Orgad Shaneh
Orgad Shaneh
Contributor
Maks Naumov
Maks Naumov
Contributor
Justin Brewer
Justin Brewer
Contributor
Matt Barr
Contributor
WKarel
WKarel
Contributor
Jonas Hoersch
Jonas Hoersch
Contributor