Fork us on GitHub Follow us on Facebook Follow us on Twitter

Changes between Version 47 and Version 48 of ReleaseNotes/Mainline

2018-07-06T18:00:38Z (2 years ago)
Jaroslav Jindrak

Added release notes for the C++ runtime.


  • ReleaseNotes/Mainline

    v47 v48  
    4949  * Improved ISO C comformance
    5050  * FIXME: C++14 Runtime support
     51    * C++ source files are compiled with `-std=c++17` (which grants most, if not all, C++17 language features)
     52      * These files are detected by having `.cpp`, `.cxx` or `.cc` as their extension
     53    * Runtime:
     54      * RTTI (`type_info` and `typeid`, no `dynamic_cast` at the moment)
     55      * Thread-safe local static variable initialization
     56      * Global static variable initialization/destruction
     57      * No support for exception at the moment, though `try`/`catch`/`throw` are redefined and should not break code
     58    * Standard library:
     59      * All containers except `forward_list` (some algorithms missing, such as sort() on `list`), including adaptors
     60      * Most of utilities
     61        * `<type_traits>`, `<ratio>` complete
     62        * `<utility>`, `<tuple>`, `<memory>`, `<function>`, `<chrono>`, `<bitset>` mostly complete
     63        * `<scoped_allocator>` not implemented
     64      * I/O library is complete, but does not throw and ignores localization
     65        * `<locale>` is defined, but is a stub (implementing it will add its functionality to I/O types)
     66      * Threading mostly complete, timed try_locks block
     67      * Iterator traits and adaptors complete
     68      * Numerics have only `<numeric>` complete and `<random>` partially implemented (missing some distributions and adaptors)
     69      * Partial `<algorithm>` implementation
     70      * `<regex>` and `<atomic>` not implemented
     71      * `<string>` implemented, but wide strings are untested (missing wide string functions in libc)
     72      * C library header wrappers are only partially implemented because features are missing from libc
     73      * Types from diagnostics library (`<exception>`, `<stdexcept>`, `<system_error>`) are implemented, but exception handling does not work
    5174  * FIXME: non-negative errno