Boost 1.38.0 beta 2 available is available from SourceForge. http://sourceforge.net/project/showfiles.php?group_id=7586&package_id=8041&release_id=657345 Please report any problems or comments to the users or developers mailing lists. ------------- Version 1.38.0 New Libraries * Flyweight: + Design pattern to manage large quantities of highly redundant objects, from Joaquín M López Muñoz. * ScopeExit: + Execute arbitrary code at scope exit, from Alexander Nasonov. * Swap: + Enhanced generic swap function, from Joseph Gauterin. Updated Libraries * Accumulators: + Add rolling_sum, rolling_count and rolling_mean accumulators. * Date_Time: + Added support for formatting and reading time durations longer than 24 hours with new formatter: %0. + Removed the testfrmwk.hpp file from the public include directory. + Fixed several bugs and compile errors. + For full details see the change history * Exception: + Improved and more customizable diagnostic_information output. * Hash: + boost/functional/detail/container_fwd.hpp has been moved to boost/detail/container_fwd.hpp. The current location is deprecated. + For more detail, see the library changelog. * Interprocess: + Updated documentation to show rvalue-references funcions instead of emulation functions. + More non-copyable classes are now movable. + Move-constructor and assignments now leave moved object in default-constructed state instead of just swapping contents. + Several bugfixes (#2391, #2431, #1390, #2570, #2528). * Intrusive: + New treap-based containers: treap, treap_set, treap_multiset. + Corrected compilation bug for Windows-based 64 bit compilers. + Corrected exception-safety bugs in container constructors. + Updated documentation to show rvalue-references funcions instead of emulation functions. * Math: + Added Johan Råde's optimised floating point classification routines. + Fixed code so that it compiles in GCC's -pedantic mode (bug report #1451). * Multi-index Containers: Some redundant type definitions have been deprecated. Consult the library release notes for further information. * Proto: + Fix problem with SFINAE of binary operators (Bug 2407). + Fix proto::call transform for callable transforms with >3 arguments. + result_of::value changed behavior for array-by-value terminals. + unpack_expr requires only Forward Sequences rather than Random Access Sequences. + Deprecate legacy undocumented BOOST_PROTO_DEFINE_(VARARG_)FUNCTION_TEMPLATE macros. + Add BOOST_PROTO_REPEAT and BOOST_PROTO_LOCAL_ITERATE macros to help with repetitive code generation + Support for nullary expressions with tag types other than proto::tag::terminal + Allow 0- and 1-argument variants of proto::or_ and proto::and_ * Regex: + Breaking change: empty expressions, and empty alternatives are now allowed when using the Perl regular expression syntax. This change has been added for Perl compatibility, when the new syntax_option_type no_empty_expressions is set then the old behaviour is preserved and empty expressions are prohibited. This is issue #1081. + Added support for Perl style ${n} expressions in format strings (issue #2556). + Added support for accessing the location of sub-expressions within the regular expression string (issue #2269). + Fixed compiler compatibility issues #2244, #2514, and #2458. * Unordered: + Use boost::swap. + Use a larger prime number list for selecting the number of buckets. + Use aligned storage to store the types. + Add support for C++0x initializer lists where they're available. + For more detail, see the library changelog. * Xpressive: + basic_regex gets nested syntax_option_flags and value_type typedef, for compatibility with std::basic_regex + Ported to Proto v4; Proto v2 at boost/xpressive/proto has been removed. + regex_error inherits from boost::exception Other Changes Experimental support for building Boost with CMake has been introduced in this version. For more details see the wiki, Discussion is taking place on the Boost-cmake mailing list. Compilers Tested Boost's primary test compilers are: * TODO * GCC 4.0.1 on OS X 10.4.10 and 10.5.2 on Intel and 10.4.9 on Power PC. * GCC 4.3.2 on Ubuntu Linux. * GCC 4.3.3 on Unstable Debian. * GCC 4.2.1 on HP-UX 64-bit. * HP C/aC++ B3910B A.06.17 on HP-UX 64-bit. * Visual C++ 7.1 SP1, 8.0 SP1 and 9.0 SP1 on Windows XP. Boost's additional test compilers include: * OS X: + GCC 4.0.1 on OS X 10.4.10 and 10.5.2 on Intel, OS X 10.4.9 on PowerPC + Intel 9.1, 10.0 on OS X 10.4.10 + Intel 10.1, 11.0 on OS X 10.5.2 * On Linux: + GCC 4.1.1, 4.2.1 on 64-bit Red Hat Enterprise Linux + GCC 4.1.2 on 64-bit Redhat Server 5.1 + GCC 3.4.3, GCC 4.0.1, GCC 4.2.4 and GCC 4.3.2 on Red Hat Enterprise Linux + GCC 4.3.2 with C++0x extensions + GCC 4.2.1 on OpenSuSE Linux + pgCC 8.0-0a 64-bit target on Red Hat Enterprise Linux + QLogic PathScale(TM) Compiler Suite: Version 3.1 on Red Hat Enterprise Linux * IBM XL C/C++ Enterprise Edition for AIX, V10.1.0.0, on AIX Version 5.3.0.40 * GCC 4.2.1 on FreeBSD 7. * GCC 4.2.1 on HP-UX Integrity * HP C/aC++ B3910B A.06.17 on HP-UX 64-bit. Acknowledgements TODO
participants (1)
-
Beman Dawes