It doesn't build even on netbsd+gcc5.4 (it did in the previous version)
Also helps SmartOS because we're currently not matching SmartOS with this
logic block, although matching GCC versions would do the trick.
Drop comment which isn't specific to fiber
New Libraries
Process library by Klemens D. Morgenstern, that provides cross platorm ways to allows you to:
* create child processes
* setup streams for child processes
* communicate with child processes through streams (synchronously or asynchronously)
* wait for processes to exit (synchronously or asynchronously)
* terminate processes
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:
* Fixed bugs
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:
* Intersection: take care that output is valid (work in progres, not yet finished - but more is valid)
* 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:
* Fixed bugs
Intrusive:
* Fixed bugs
Lexical Cast:
* Fixed issue found by -fsanitize=undefined 21
Log:
* Removed the previously deprecated type_info_wrapper.
* 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
Metaparse:
* Improved the implementation of BOOST_METAPARSE_STRING
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.
As an alternative, it's possible to require a higher GCC version,
note that it's necessary to require a higher GCC on other boost-*
packages (probably boost-headers).
fix build on netbsd 6.1.5
New Libraries:
--------------
Compute:
Parallel/GPU-computing library
DLL:
Library for comfortable work with DLL and DSO. Library provides a portable across platforms way to:
* load libraries
* import any native functions and variables
* make alias names for C++ mangled functions and symbols
* query libraries for sections and exported symbols
* self loading and self querying
* getting program and module location by exported symbol
Hana:
A modern C++ metaprogramming library. It provides high level algorithms to manipulate heterogeneous sequences, allows writing type-level computations with a natural syntax, provides tools to introspect user-defined types and much more.
Metaparse:
A library for generating compile time parsers parsing embedded DSL code as part of the C++ compilation process. The library is similar to Spirit, however while parsers built with Spirit parse at run-time, parsers built with Metaparse parse at compile-time.
New Libraries
VMD:
Variadic Macro Data library, from Edward Diener.
Updated Libraries
Atomic:
* Enforced proper alignment of atomic<> storage. This should fix possible issues on platforms that support atomic operations on data units larger than the native word size. This may also change binary layout of user's data structures that have atomic<> members.
* Fixed compilation for PowerPC with IBM XL C++ compiler. Corrected memory barriers in PowerPC assembler.
* Fixed compilation with MSVC-8 for ARM.
* Fixed compilation with gcc 4.4 for x86-64, when 128-bit atomic operations were used. (10994)
* Optimized some gcc assembler blocks for x86/x86-64 to reduce the number of used registers. This may require binutils 2.10 or later.
Chrono - 2.0.5:
Fixes:
* 10778 VC14 CTP4 Atomic don't compile with boost::chrono durations which are not TriviallyCopyable
* 10840 Missing std:: qualifier for puts call in test_7868.cpp
* 10851 Missing std:: qualifier for puts call in time_point_output.cpp
* 10893 Minor doc typo in Boost.Chrono
* 10992 Chrono IO state savers inconsistent with Boost.IO state savers
* 10995 duration_put::put_value truncates fractional part
* 11006 Impossible to instantiate time_fmt_io_saver due to several errors.
* 11012 chrono_io v2 fail to compile with boost::chrono::duration< boost::rational<int> >
Container:
* Implemented Polymorphic Memory Resources.
* Add more BOOST_ASSERT checks to test preconditions in some operations (like pop_back, pop_front, back, front, etc.)
* Added C++11 back/front operations to basic_string.
Fixed bugs:
* Trac 11627: "small_vector<T,n>::swap() appears to be broken".
* Trac 11628: "small_vector<int,n> iterates over elements in destructor".
* Trac 11697: "Wrong initialization order in tuple copy-constructor".
* Trac 11698: "Missing return statement in static_storage_allocator".
* GitHub 29: Doc fixes for flap_map complexity requirements.
* GitHub 31: DL_SIZE_IMPL also dereference addr.
Context:
* 11603 typo in PPC32/MACH-O asm
* support for CYGWIN
Core:
* In symbol demangling tools, added support for gabi++ ABI implementation used in Android NDK.
* Added a new enable_if_has_type tool for performing SFINAE checks for presence of a nested type.
more...
Updated Libraries
Any:
RTTI is not required any more (TypeIndex library is used for RTTI emulation)
Fixed 8958
Asio:
Fixed the kqueue reactor so that it works on FreeBSD.
Fixed an issue in the kqueue reactor which resulted in spinning when using serial ports on Mac OS.
Fixed kqueue reactor support for read-only file descriptors.
Fixed a compile error when using the /dev/poll reactor.
Changed the Windows backend to use WSASocketW, as WSASocketA has been deprecated.
Fixed some warnings reported by Visual C++ 2013.
Fixed integer type used in the WinRT version of the byte-order conversion functions.
Changed documentation to indicate that use_future and spawn() are not made available when including the asio.hpp convenience header.
Explicitly marked asio::strand as deprecated. Use asio::io_service::strand instead.
Circular Buffer:
Fixed some warnings and move_if_noexcept from Boost.Move is used
Config:
BOOST_HAS_PRAGMA_DETECT_MISMATCH macro was added
Container:
Added support for initializer_list.
Fixed double destruction bugs in vector and backward expansion capable allocators.
Coroutine:
optionally register stacks with valgrind
10386 MSVC link error in asymmetric_coroutine.hpp: symbol already defined
10536 call to 'begin(...pull_coroutine< R > & c)' is ambiguous
Flyweight:
Added serialization support via Boost Serialization.
flyweight default constructor was made explicit in Boost 1.56, which introduces a regression in some initialization scenarios. The former non-explicit default constructor has been restored
More...
New Libraries
* Algorithm: A collection of useful generic algorithms, from Marshall Clow.
This includes several different searching algorithms, as well as most of the
new algorithms from the C++11 standard library
* Functional/OverloadedFunction: Overload different functions into a single
function object, from Lorenzo Caminiti.
* LocalFunction: Program functions locally, within other functions, directly
within the scope where they are needed, from Lorenzo Caminiti.
* Utility/IdentityType: Wrap types within round parenthesis so they can always
be passed as macro parameters, from Lorenzo Caminiti.
More http://www.boost.org/users/history/version_1_50_0.html
* Fixed a problem on kqueue-based platforms where a deadline_timer
may never fire if the io_service is running in a background thread
* Fixed a const-correctness issue that prevented valid uses of
has_service<> from compiling
* Fixed MinGW cross-compilation
* Removed dependency on deprecated Boost.System functions
* Ensured close()/closesocket() failures are correctly propagated
* Added a check for errors returned by
InitializeCriticalSectionAndSpinCount
* Added support for hardware flow control on QNX
* Always use pselect() on HP-UX, if it is available.
* Ensured handler arguments are passed as lvalues
* Fixed Windows build when thread support is disabled
* Fixed a Windows-specific problem where deadline_timer objects with
expiry times set more than 5 minutes in the future may never expire
* Fixed the resolver backend on BSD platforms so that an empty service
name resolves to port number 0, as per the documentation
* Fixed read operations so that they do not accept buffer sequences of
type const_buffers_1
* Redefined Protocol and id to avoid clashing with Objective-C++ keywords
* Fixed a vector reallocation performance issue that can occur when
there are many active deadline_timer objects
* Fixed the kqueue backend so that it compiles on NetBSD
* Fixed the socket io_control() implementation on 64-bit Mac OS X and
BSD platforms
* Fixed a Windows-specific problem where failures from accept() are
incorrectly treated as successes
* Deprecated the separate compilation header <boost/asio/impl/src.cpp>
in favour of <boost/asio/impl/src.hpp>
* New Libraries
Property Tree: A tree data structure especially suited to storing
configuration data, from Marcin Kalicinski and Sebastian Redl.
* Updated Libraries
* Build System
A bug preventing "fat" 32-bit + 64-bit builds on OSX has been fixed.
here. Based on patches sent by Brook Milligan through private mail
with some minimal changes by me to fix boost-python and builds on
Mac OS X. Tested on NetBSD/amd64 current and Tiger.
This is a fix for a possible DoS when using Boost.Regex in an application.
Note that the fix goes into a header, so all applications that use
Boost.Regex may be affected by the problem and need to be rebuilt.