Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Commit 2020-09-15 - Revision of texts - documentation and basic_strings. check-in: a923aac5 user: luismachuca
Commit 2020-08-24 - Disabling stuff for older compilers until we can recheck development.

This build disables some functionalities, such as those in <type_traits, <tuple>, etc, in pre-C++03 compilers where we don't know, or need to re-check, the status of template support. See Per-Compiler Notes. check-in: acdbb39c user: luismachuca tags: trunk, gcc_min_404, clang_min_300, msvc_min_1500, openwatcom_min_200, release, y2020

Commit 2020-08-18 - Improvements for string_view. check-in: 6dd13fa0 user: luismachuca
Commit 2020-02-04 - Compatibility improvements for MSVC 2012, GCC 6.x.
  • cxxomfort: Added better compatibility with GCC in C++14 mode (Enhances: []).
  • cxxomfort: Added better detection of MSVC 2012 and MSVC 2013 (Enhances: [70b70d8017]).
  • cstddef: Moved CXXOMFORT_IMPLEMENTS_decltype from utility.
  • cstddef: Moved to_byte to fixes (cxxomfort::fix).
  • ctime: Now uses POSIX timespec functions when in POSIX env.
  • ctime: Now implements timespec_get() in terms of GetSystemTime() when in Windows env.
  • memory: Fixed make_unique double / conflicting definition in GCC C++14 emulation mode (Enhances: []).
  • numeric: Fixed an issue where the template argument names for gcd, lcm cause conflicts in MSVC >= 2010.
  • string_view: Fixed a copy-ctor and assignment compilation error due to partial constexpr support (see library:array_ref).
  • string_view: Fixed missing reverse iterators.
  • system_error: Fixed an issue where code including the header would not compile if it was the only backported header it was using.
  • tuple: Fixed get<type>(tuple<...>) not being backported to C++11 in GCC≥5.
  • tuple: Fixed get<type>(tuple<...>) clashing with GCC 6.x in C++14 emulation mode (__cplusplus==201500) (Enhances: []).
  • tuple: Fixed make_from_tuple not being backported to C++11, C++14 in GCC≥5.
  • utility: moved CXXOMFORT_IMPLEMENTS_decltype to cstddef.
  • library:algorithm: Added [any,all,none]_on.
  • library:array_ref: Made front, back noexcept where available.
  • library:array_ref: Added size_bytes member function, adapting from C++20 span.
  • library:array_ref: Added a workaround for GCC bug on "defaulted declaration differs" for GCC < 7 (see [E1])
  • library:array_ref: Added missing operator==, operator!=.
  • library:functional: Fixed anachronistic parameter passing in constant_fn().
  • library:numeric: static_min, static_max now take up to 10 arguments.
  • library:utility: Added hexdump, hexload.
  • library:utility: Added utility typedefs bytes_view, const_bytes_view and utility function as_bytes_view().

[E1] check-in: f22f0a4b user: luismachuca tags: msvc_min_1500, release, y2020, gcc_min_408, tagfiles, gcc_max_605, msvc_max_1700

Commit 2020-01-13 - The “don't ask me for documentation fixes, I don't have 2020 vision” release.
  • cxxomfort: Added detection of Clang 4.x with some features.
  • cxxomfort: CXXOMFORT_VERSION now copies CXXOMFORT_DATE.
  • config: Slightly improved detection of Clang __has_extension.
  • algorithm: Fixed any_of returning always true (Fixes: [98efdadf5b]).
  • functional: Fixed missing connection of documentation for heterogeneous functors.
  • iterator: Defined and documented the behaviour of fix:is_contiguous_access_iterator for "checked" iterators.
  • limits: Fixed missing documentation for integral_limits.
  • memory: Fixed documentation for the to_bool fixes.
  • system_error: Fixed Doxygen marking for the category functions.
  • library:functional: Fixed missing connection of documentation for heterogeneous functors.
  • library:iterator: Added at_or() adapter.
  • library:tuple: Fixed missing Doxygen marking for tuple_pop, tuple_shift.
  • library:utility: Added valcmp (also in library:algorithm).
  • library:array_ref: Fixed constructors in accordance to n3334.
  • library:function_ref: Added support for 3, 4, 5-args functions.
  • library:typesafe_enum: Corrected default constructor as per [expr.type.conv] and .
  • tags: Added tags for new features in library:functional.
  • tags: Updated cxxomfort tags for new fix / assists.
  • tags: Removed references to CXXOMFORT_VERSION.
  • doc: Updated autogenerated documentation.
  • LICENSE: Now reflects year 2020.
This release marks the opening of (pre-)releases to be marked with the 'y2020' tag.
check-in: 4817fec6 user: luismachuca tags: trunk, gcc_min_404, msvc_min_1500, release, y2020, clang_min_303
Commit 2019-11-11 - .at() the end of year _or close.
  • cxxomfort: CXXOMFORT_CXX_EMULATION now returns >=2007 for C++98/03 mode with TR1, where possible.
  • cxxomfort: library is now **not** included autimatically. It must be included explicitly even with cxxomfort.hpp.
  • algorithm: Added count, count_if from C++20 (fixes: [ac8af64591]).
  • algorithm: Tentatively marking find, count algorithms as constexpr for C++14.
  • array: Fixed a wrong call to lexicographical_compare in pre-TR1 implementation.
  • iterator: Added contiguous_iterator_tag. Note that pre-C++17 Standard code would not know how to use it.
  • iterator: Added make_reverse_iterator from C++14.
  • random: Fixed a missing cxxomfort::fix in certain compilers in C++11 mode (enhances: [5ba7743db6] Clang-4.x support, GCC-6.x support).
  • string_view: Added .at_or().
  • library:array_ref: Added .at_or().
  • library:fixed_vector: Added .at_or().
  • library:fixed_vector: Made size, empty accessors constexpr.
  • library:tuple: Implemented variadic versions of tuple_shift, tuple_pop.
  • library:utility: Added make_simple_pair.
check-in: 1dfa7ad4 user: luismachuca tags: trunk, y2019, clang_min_302, gcc_min_404, gcc_max_600
Commit 2019-08-28 - MSVC and the End of <time.h>s as we Know It™
  • config: Fixed namespace placement of ere-TR1 features in MSVC 2010, 2012 (enhances: [70b70d8017]).
  • ctime: Added header with backports for timespec_get.
  • algorithm: Moved copy_if_not out of std and into its proper location in supplement.
  • algorithm: Documentation of algorithms now points to the corresponding cppreference page.
  • ios: Added header, with backport of C++11 io_errc.
  • ios: Added missing left,right manips to ios in OpenWatcom (enhances: [b8ea55b791]).
  • memory: Fixed to_bool of shared_ptr when the latter is unavailable (enhances: [11f57a70cf]).
  • numeric: Added midpoint, from C++20.
  • string_view: Fixed implementation to not use inheritance.
  • string_view: Fixed an issue where it did not include the correct <system_error> implementation.
  • typeindex: Removed a warning of conversion to bool when in MSVC.
  • type_traits: Fixed is_base_of for Clang 2.8, 3.0 (enhances: [1cbdc0b48d]).
  • library:string: ifdef-out the header for pre-C++1997 mode.
  • library:string: Partially extended support for variadic to_string.
  • library:utility: ifdef-out the header for pre-C++1997 mode.
  • library:typesafe_enum: Now default-constructs to 0 to emulate enum class behaviour.
  • tags: Updated with new information on macros.
check-in: 44499e7b user: luismachuca tags: trunk
Commit 2019-08-25 - Looking for a more independent solution.
  • cxxomfort: Warning: this commit breaks for Clang.
  • cxxomfort: Renamed CXXO_COMPILER_SUPPORT_cstd_... to CXXO_CXXSTDHEADER_... .
  • cxxomfort: Reworked some macros related to TR1 and its headers/namespaces to be more uniform.
  • cxxomfort: Taken the first steps in removing the need for a TR1 forwarder, with <array>.
  • array: Fixed detecting an <array> that is not there in MSVC 2005 (enhances: [11f57a70cf]).
  • array: Testing removal of requirement for a TR1 forwarder in the header.
  • cerrno: Added header, with definitions of some later POSIX error code macros for MSVC (enhances: [11f57a70cf]).
  • functional: Fixed visibility of (tr1::)hash when in GCC/Clang with TR1.
  • functional: Added baseline implementations for reference_wrapper, hash when before C++03.
  • random: Fixed detecting a <random> that is not there in MSVC 2005 (enhances: [11f57a70cf]).
  • random: Testing removal of requirement for a TR1 forwarder in the header.
  • type_traits: Testing ability to fake some intrinsics for is_enum, et al, in OpenWatcom (enhances: [b8ea55b791]).
  • system_error: Removed a warning of conversion to bool when in MSVC.
  • utility: Fixed make_integer_sequence et al, to use C++11 using... = where appropriate.
  • library:array_ref: Made def-ctor trivial in C++11 and do the "right thing" in <C++11.
check-in: deb47099 user: luismachuca tags: trunk, y2019, gcc_min_404, pre-release, msvc_max_1700, msvc_min_1599
Commit 2019-08-22 - A forgotten error in <memory>.
  • config: Updated some changes to documentation.
  • memory: Fixed a wrong argument name in uninitialized_default_construct.
  • system_error: Fixed errc not default-constructing to zero in C++03 like enums do.
  • docgen: Improved documentation for library:tuple, library:typesafe_enum.
check-in: d5fcc075 user: luismachuca tags: trunk, y2019, clang_min_302, gcc_min_404, openwatcom_min_200, docgen
Commit 2019-08-14 - Myriad memory and mangling maintenance minuscule fixes.
  • cxxomfort: output_info now takes a FILE* stream.
  • cxxomfort: Fixed month detection in CXXOMFORT_ISODATE().
  • cxxomfort: Fixed wrong usage of explicit_cast when in GCC "C++0x" mode.
  • cxxomfort: Fixed "do-nothing" move emulation in pre-C++03.
  • cxxomfort: Minimum improvements to move emulation in CXX_STD<1997 (enhances: [b8ea55b791]).
  • config: Added detection for _Pragma in some compilers.
  • config: Fixed missing nullptr_t (not nullptr) in Clang 2.8-3.2 for C++11 mode (enhances: [1cbdc0b48d]).
  • memory: Fixed namespace std for make_unique (C++14).
  • memory: Added default_delete to backports (previously internal) (C++11).
  • memory: Added fix:to_bool now also works with shared_ptr.
  • memory: Added fix:malloc_deleter component.
  • memory: destroy and uninitialized_default families moved to their own PR header.
  • random: Added fix:randmo for rand() bias (randmo()).
  • string_view: Made pointers in constructors const.
  • string_view: Added fix:make_string_view.
  • typeindex: Fixed inclusion of TR1 headers.
  • type_traits: Added missing reference to is_convertible from TR1.
  • library:type_name: Fixed [e59985dfdf] (stack buffer realloc with __cxa_demangle).
  • library:type_name: Changed implementation to typeid_demangle() so that user needs to include <typeinfo> explicitly.
check-in: 7df32629 user: luismachuca tags: trunk
Commit 2019-02-14 - Minor fixes.
  • cxxomfort: Fixed version values.
  • config: Added detection values for type-related compiler intrinsics.
check-in: 6530abeb user: luismachuca tags: trunk, y2019
(no comment) check-in: 26454986 user: luismachuca tags: trunk, y2019, gcc_min_404, msvc_min_1500, msvc_max_1700, gcc_max_505, openwatcom_min_109, testing
Commit 2019-02-13 - Love-- for OpenWatcom; various minor fixes.
  • cxxomfort: Updated CHANGELOG.txt which missed out an update.
  • cxxomfort: Initial compatibility testings for MSVC 2005 compatibility (has no TR1).
  • config: CXXO_INCLUDE_SYS notices got demoted to notice level 3.
  • config: Added basic detection of MSVC 2005 (still not supported).
  • base: Base feature implementation notices got demoted to notice level 4.
  • cstddef: Reimplemented std::byte, with better compatibility for C++<97.
  • cstddef: Added std::byte support for MSVC 2005.
  • array: Added support for MSVC 2005.
  • system_error: Fixed forwarding of @ref cxxomfort::fix::errc for MSVC 2012.
  • type_traits: Added support for the "primary" traits in MSVC 2005.
  • library:algorithm: Add p1223 find_backward().
  • library:algorithm: Add p1223r0 find_not().
  • library:algorithm: Add lwg217 find() (binary predicate form).
check-in: 0ad1617a user: luismachuca tags: trunk, y2019, gcc_min_404, msvc_min_1500, msvc_max_1700, gcc_max_505, openwatcom_min_109, testing
Commit 2019-02-04 - Barebones implementations for C++<1997, and some compatibility fixes.
  • cxxomfort: Fixed identification of OpenWatcom 1.9, 2.0 (Per-Compiler Notes).
  • cxxomfort: Added a separate header for code generation macros.
  • array: Added barbeones feature for Watcom (Per-Compiler Notes).
  • cstddef: Pending extend backport of std::byte.
  • functional: Fixed transparent functors detected in MSVC 2013.
  • random: Disabled temporarily in C++<1997 mode.
  • string: Added operator<< for Watcom.
  • string_view: Reimplemented for C++<1997 mode.
  • string_view: Fixed ostream operator for C++<1997, basic_ostream<char> only.
  • system_error: Disabled in <1997 mode.
  • tuple: Disabled in <1997 mode (Per-Compiler Notes).
  • library: Disabled temporarily in <1997 mode (Per-Compiler Notes).
check-in: d5f10c30 user: luismachuca tags: trunk, y2019, pre-release, msvc_max_1700, gcc_max_505, clang_max_303