We've built up quite a few links directly to github within the code base. We should instead use `llvm.org/PR<issue-number>` to link to bugs, since that is resilient to the bug tracker changing in the future. This is especially relevant for tests linking to bugs, since they will probably be there for decades to come. A nice side effect is that these links are significantly shorter than the GH links, making them much less of an eyesore. This patch also replaces a few links that linked to the old bugzilla instance on llvm.org.
14 KiB
14 KiB
| 1 | Paper # | Paper Name | Meeting | Status | First released version | Notes |
|---|---|---|---|---|---|---|
| 2 | `N3911 <https://wg21.link/N3911>`__ | TransformationTrait Alias ``void_t``\ . | 2014-11 (Urbana) | |Complete| | 3.6 | |
| 3 | `N4089 <https://wg21.link/N4089>`__ | Safe conversions in ``unique_ptr<T[]>``\ . | 2014-11 (Urbana) | |Complete| | 5 | |
| 4 | `N4169 <https://wg21.link/N4169>`__ | A proposal to add invoke function template | 2014-11 (Urbana) | |Complete| | 3.7 | |
| 5 | `N4190 <https://wg21.link/N4190>`__ | Removing auto_ptr, random_shuffle(), And Old <functional> Stuff. | 2014-11 (Urbana) | |Complete| | 15 | |
| 6 | `N4258 <https://wg21.link/N4258>`__ | Cleaning-up noexcept in the Library. | 2014-11 (Urbana) | |Complete| | 21 | |
| 7 | `N4259 <https://wg21.link/N4259>`__ | Wording for std::uncaught_exceptions | 2014-11 (Urbana) | |Complete| | 3.7 | ``std::uncaught_exception`` is deprecated since LLVM 20 |
| 8 | `N4277 <https://wg21.link/N4277>`__ | TriviallyCopyable ``reference_wrapper``\ . | 2014-11 (Urbana) | |Complete| | 3.2 | |
| 9 | `N4279 <https://wg21.link/N4279>`__ | Improved insertion interface for unique-key maps. | 2014-11 (Urbana) | |Complete| | 3.7 | |
| 10 | `N4280 <https://wg21.link/N4280>`__ | Non-member size() and more | 2014-11 (Urbana) | |Complete| | 3.6 | |
| 11 | `N4284 <https://wg21.link/N4284>`__ | Contiguous Iterators. | 2014-11 (Urbana) | |Complete| | 3.6 | |
| 12 | `N4285 <https://wg21.link/N4285>`__ | Cleanup for exception-specification and throw-expression. | 2014-11 (Urbana) | |Complete| | 4 | |
| 13 | ||||||
| 14 | `N4387 <https://wg21.link/N4387>`__ | improving pair and tuple | 2015-05 (Lenexa) | |Complete| | 4 | |
| 15 | `N4389 <https://wg21.link/N4389>`__ | bool_constant | 2015-05 (Lenexa) | |Complete| | 3.7 | |
| 16 | `N4508 <https://wg21.link/N4508>`__ | shared_mutex for C++17 | 2015-05 (Lenexa) | |Complete| | 3.7 | |
| 17 | `N4366 <https://wg21.link/N4366>`__ | LWG 2228 missing SFINAE rule | 2015-05 (Lenexa) | |Complete| | 3.1 | |
| 18 | `N4510 <https://wg21.link/N4510>`__ | Minimal incomplete type support for standard containers, revision 4 | 2015-05 (Lenexa) | |Complete| | 3.6 | |
| 19 | ||||||
| 20 | `P0004R1 <https://wg21.link/P0004R1>`__ | Remove Deprecated iostreams aliases. | 2015-10 (Kona) | |Complete| | 3.8 | |
| 21 | `P0006R0 <https://wg21.link/P0006R0>`__ | Adopt Type Traits Variable Templates for C++17. | 2015-10 (Kona) | |Complete| | 3.8 | |
| 22 | `P0092R1 <https://wg21.link/P0092R1>`__ | Polishing <chrono> | 2015-10 (Kona) | |Complete| | 3.8 | |
| 23 | `P0007R1 <https://wg21.link/P0007R1>`__ | Constant View: A proposal for a ``std::as_const``\ helper function template. | 2015-10 (Kona) | |Complete| | 3.8 | |
| 24 | `P0156R0 <https://wg21.link/P0156R0>`__ | Variadic lock_guard(rev 3). | 2015-10 (Kona) | |Nothing To Do| | Pulled at the 2017-01 meeting in Kona | |
| 25 | `P0074R0 <https://wg21.link/P0074R0>`__ | Making ``std::owner_less``\ more flexible | 2015-10 (Kona) | |Complete| | 3.8 | |
| 26 | `P0013R1 <https://wg21.link/P0013R1>`__ | Logical type traits rev 2 | 2015-10 (Kona) | |Complete| | 3.8 | |
| 27 | ||||||
| 28 | `P0024R2 <https://wg21.link/P0024R2>`__ | The Parallelism TS Should be Standardized | 2016-02 (Jacksonville) | |Partial| | ||
| 29 | `P0226R1 <https://wg21.link/P0226R1>`__ | Mathematical Special Functions for C++17 | 2016-02 (Jacksonville) | |In Progress| | Progress is tracked `here <https://llvm.org/PR99939>`__ | |
| 30 | `P0220R1 <https://wg21.link/P0220R1>`__ | Adopt Library Fundamentals V1 TS Components for C++17 | 2016-02 (Jacksonville) | |Complete| | 16 | |
| 31 | `P0218R1 <https://wg21.link/P0218R1>`__ | Adopt the File System TS for C++17 | 2016-02 (Jacksonville) | |Complete| | 7 | |
| 32 | `P0033R1 <https://wg21.link/P0033R1>`__ | Re-enabling shared_from_this | 2016-02 (Jacksonville) | |Complete| | 3.9 | |
| 33 | `P0005R4 <https://wg21.link/P0005R4>`__ | Adopt not_fn from Library Fundamentals 2 for C++17 | 2016-02 (Jacksonville) | |Complete| | 3.9 | |
| 34 | `P0152R1 <https://wg21.link/P0152R1>`__ | constexpr ``atomic::is_always_lock_free``\ | 2016-02 (Jacksonville) | |Complete| | 3.9 | |
| 35 | `P0185R1 <https://wg21.link/P0185R1>`__ | Adding [nothrow-]swappable traits | 2016-02 (Jacksonville) | |Complete| | 3.9 | |
| 36 | `P0253R1 <https://wg21.link/P0253R1>`__ | Fixing a design mistake in the searchers interface | 2016-02 (Jacksonville) | |Complete| | 3.9 | |
| 37 | `P0025R0 <https://wg21.link/P0025R0>`__ | An algorithm to "clamp" a value between a pair of boundary values | 2016-02 (Jacksonville) | |Complete| | 3.9 | |
| 38 | `P0154R1 <https://wg21.link/P0154R1>`__ | constexpr std::hardware_{constructive,destructive}_interference_size | 2016-02 (Jacksonville) | |Complete| | 19 | The required macros are only implemented as of LLVM 19. |
| 39 | `P0030R1 <https://wg21.link/P0030R1>`__ | Proposal to Introduce a 3-Argument Overload to std::hypot | 2016-02 (Jacksonville) | |Complete| | 3.9 | |
| 40 | `P0031R0 <https://wg21.link/P0031R0>`__ | A Proposal to Add Constexpr Modifiers to reverse_iterator, move_iterator, array and Range Access | 2016-02 (Jacksonville) | |Complete| | 4 | |
| 41 | `P0272R1 <https://wg21.link/P0272R1>`__ | Give ``std::string``\ a non-const ``.data()``\ member function | 2016-02 (Jacksonville) | |Complete| | 3.9 | |
| 42 | `P0077R2 <https://wg21.link/P0077R2>`__ | ``is_callable``\ , the missing INVOKE related trait | 2016-02 (Jacksonville) | |Complete| | 3.9 | |
| 43 | ||||||
| 44 | `P0032R3 <https://wg21.link/P0032R3>`__ | Homogeneous interface for variant, any and optional | 2016-06 (Oulu) | |Complete| | 4 | |
| 45 | `P0040R3 <https://wg21.link/P0040R3>`__ | Extending memory management tools | 2016-06 (Oulu) | |Complete| | 4 | |
| 46 | `P0063R3 <https://wg21.link/P0063R3>`__ | C++17 should refer to C11 instead of C99 | 2016-06 (Oulu) | |Complete| | 7 | |
| 47 | `P0067R3 <https://wg21.link/P0067R3>`__ | Elementary string conversions | 2016-06 (Oulu) | |Nothing To Do| | n/a | Resolved by `P0067R5 <https://wg21.link/P0067R5>`__ |
| 48 | `P0083R3 <https://wg21.link/P0083R3>`__ | Splicing Maps and Sets | 2016-06 (Oulu) | |Complete| | 8 | |
| 49 | `P0084R2 <https://wg21.link/P0084R2>`__ | Emplace Return Type | 2016-06 (Oulu) | |Complete| | 4 | |
| 50 | `P0088R3 <https://wg21.link/P0088R3>`__ | Variant: a type-safe union for C++17 | 2016-06 (Oulu) | |Complete| | 4 | |
| 51 | `P0137R1 <https://wg21.link/P0137R1>`__ | Core Issue 1776: Replacement of class objects containing reference members | 2016-06 (Oulu) | |Complete| | 6 | |
| 52 | `P0163R0 <https://wg21.link/P0163R0>`__ | shared_ptr::weak_type | 2016-06 (Oulu) | |Complete| | 3.9 | |
| 53 | `P0174R2 <https://wg21.link/P0174R2>`__ | Deprecating Vestigial Library Parts in C++17 | 2016-06 (Oulu) | |Complete| | 15 | |
| 54 | `P0175R1 <https://wg21.link/P0175R1>`__ | Synopses for the C library | 2016-06 (Oulu) | |Nothing To Do| | n/a | |
| 55 | `P0180R2 <https://wg21.link/P0180R2>`__ | Reserve a New Library Namespace for Future Standardization | 2016-06 (Oulu) | |Nothing To Do| | n/a | |
| 56 | `P0181R1 <https://wg21.link/P0181R1>`__ | Ordered by Default | 2016-06 (Oulu) | |Nothing To Do| | n/a | Pulled at the 2017-01 meeting in Kona |
| 57 | `P0209R2 <https://wg21.link/P0209R2>`__ | make_from_tuple: apply for construction | 2016-06 (Oulu) | |Complete| | 3.9 | |
| 58 | `P0219R1 <https://wg21.link/P0219R1>`__ | Relative Paths for Filesystem | 2016-06 (Oulu) | |Complete| | 7 | |
| 59 | `P0254R2 <https://wg21.link/P0254R2>`__ | Integrating std::string_view and std::string | 2016-06 (Oulu) | |Complete| | 4 | |
| 60 | `P0258R2 <https://wg21.link/P0258R2>`__ | has_unique_object_representations | 2016-06 (Oulu) | |Complete| | 6 | |
| 61 | `P0295R0 <https://wg21.link/P0295R0>`__ | Adopt Selected Library Fundamentals V2 Components for C++17 | 2016-06 (Oulu) | |Complete| | 4 | |
| 62 | `P0302R1 <https://wg21.link/P0302R1>`__ | Removing Allocator Support in std::function | 2016-06 (Oulu) | |Complete| | 4 | |
| 63 | `P0307R2 <https://wg21.link/P0307R2>`__ | Making Optional Greater Equal Again | 2016-06 (Oulu) | |Complete| | 4 | |
| 64 | `P0336R1 <https://wg21.link/P0336R1>`__ | Better Names for Parallel Execution Policies in C++17 | 2016-06 (Oulu) | |Complete| | 17 | |
| 65 | `P0337R0 <https://wg21.link/P0337R0>`__ | Delete ``operator=``\ for polymorphic_allocator | 2016-06 (Oulu) | |Complete| | 3.9 | |
| 66 | `P0346R1 <https://wg21.link/P0346R1>`__ | A <random> Nomenclature Tweak | 2016-06 (Oulu) | |Complete| | 3.9 | |
| 67 | `P0358R1 <https://wg21.link/P0358R1>`__ | Fixes for not_fn | 2016-06 (Oulu) | |Complete| | 3.9 | |
| 68 | `P0371R1 <https://wg21.link/P0371R1>`__ | Temporarily discourage memory_order_consume | 2016-06 (Oulu) | |Nothing To Do| | n/a | |
| 69 | `P0392R0 <https://wg21.link/P0392R0>`__ | Adapting string_view by filesystem paths | 2016-06 (Oulu) | |Complete| | 4 | |
| 70 | `P0393R3 <https://wg21.link/P0393R3>`__ | Making Variant Greater Equal | 2016-06 (Oulu) | |Complete| | 4 | |
| 71 | `P0394R4 <https://wg21.link/P0394R4>`__ | Hotel Parallelifornia: terminate() for Parallel Algorithms Exception Handling | 2016-06 (Oulu) | |Complete| | 17 | |
| 72 | ||||||
| 73 | `P0003R5 <https://wg21.link/P0003R5>`__ | Removing Deprecated Exception Specifications from C++17 | 2016-11 (Issaquah) | |Complete| | 5 | |
| 74 | `P0067R5 <https://wg21.link/P0067R5>`__ | Elementary string conversions, revision 5 | 2016-11 (Issaquah) | |Partial| | For integer types, ``std::(to|from)_chars`` has been available since v7; for ``float`` and ``double``, ``std::to_chars`` since v14 and ``std::from_chars`` since v20. Support is complete except for ``long double``. | |
| 75 | `P0403R1 <https://wg21.link/P0403R1>`__ | Literal suffixes for ``basic_string_view``\ | 2016-11 (Issaquah) | |Complete| | 4 | |
| 76 | `P0414R2 <https://wg21.link/P0414R2>`__ | Merging shared_ptr changes from Library Fundamentals to C++17 | 2016-11 (Issaquah) | |Complete| | 11 | |
| 77 | `P0418R2 <https://wg21.link/P0418R2>`__ | Fail or succeed: there is no atomic lattice | 2016-11 (Issaquah) | |||
| 78 | `P0426R1 <https://wg21.link/P0426R1>`__ | Constexpr for ``std::char_traits``\ | 2016-11 (Issaquah) | |Complete| | 4 | |
| 79 | `P0435R1 <https://wg21.link/P0435R1>`__ | Resolving LWG Issues re ``common_type``\ | 2016-11 (Issaquah) | |Complete| | 4 | |
| 80 | `P0502R0 <https://wg21.link/P0502R0>`__ | Throwing out of a parallel algorithm terminates - but how? | 2016-11 (Issaquah) | |||
| 81 | `P0503R0 <https://wg21.link/P0503R0>`__ | Correcting library usage of "literal type" | 2016-11 (Issaquah) | |Complete| | 4 | |
| 82 | `P0504R0 <https://wg21.link/P0504R0>`__ | Revisiting in-place tag types for any/optional/variant | 2016-11 (Issaquah) | |Complete| | 4 | |
| 83 | `P0505R0 <https://wg21.link/P0505R0>`__ | Wording for GB 50 - constexpr for chrono | 2016-11 (Issaquah) | |Complete| | 4 | |
| 84 | `P0508R0 <https://wg21.link/P0508R0>`__ | Wording for GB 58 - structured bindings for node_handles | 2016-11 (Issaquah) | |Complete| | 7 | |
| 85 | `P0509R1 <https://wg21.link/P0509R1>`__ | Updating "Restrictions on exception handling" | 2016-11 (Issaquah) | |Nothing To Do| | n/a | |
| 86 | `P0510R0 <https://wg21.link/P0510R0>`__ | Disallowing references, incomplete types, arrays, and empty variants | 2016-11 (Issaquah) | |Complete| | 4 | |
| 87 | `P0513R0 <https://wg21.link/P0513R0>`__ | Poisoning the Hash | 2016-11 (Issaquah) | |Complete| | 5 | |
| 88 | `P0516R0 <https://wg21.link/P0516R0>`__ | Clarify That shared_future's Copy Operations have Wide Contracts | 2016-11 (Issaquah) | |Complete| | 4 | |
| 89 | `P0517R0 <https://wg21.link/P0517R0>`__ | Make future_error Constructible | 2016-11 (Issaquah) | |Complete| | 4 | |
| 90 | `P0521R0 <https://wg21.link/P0521R0>`__ | Proposed Resolution for CA 14 (shared_ptr use_count/unique) | 2016-11 (Issaquah) | |Complete| | 18 | |
| 91 | ||||||
| 92 | `P0156R2 <https://wg21.link/P0156R2>`__ | Variadic Lock guard(rev 5) | 2017-02 (Kona) | |Complete| | 5 | |
| 93 | `P0270R3 <https://wg21.link/P0270R3>`__ | Removing C dependencies from signal handler wording | 2017-02 (Kona) | |Nothing To Do| | ||
| 94 | `P0298R3 <https://wg21.link/P0298R3>`__ | A byte type definition | 2017-02 (Kona) | |Complete| | 5 | |
| 95 | `P0317R1 <https://wg21.link/P0317R1>`__ | Directory Entry Caching for Filesystem | 2017-02 (Kona) | |Complete| | 7 | |
| 96 | `P0430R2 <https://wg21.link/P0430R2>`__ | File system library on non-POSIX-like operating systems | 2017-02 (Kona) | |Complete| | 7 | |
| 97 | `P0433R2 <https://wg21.link/P0433R2>`__ | Toward a resolution of US7 and US14: Integrating template deduction for class templates into the standard library | 2017-02 (Kona) | |Complete| | 14 | |
| 98 | `P0452R1 <https://wg21.link/P0452R1>`__ | Unifying <numeric> Parallel Algorithms | 2017-02 (Kona) | |Partial| | The changes to ``std::transform_inclusive_scan`` and ``std::transform_exclusive_scan`` have not yet been implemented. | |
| 99 | `P0467R2 <https://wg21.link/P0467R2>`__ | Iterator Concerns for Parallel Algorithms | 2017-02 (Kona) | |Partial| | ||
| 100 | `P0492R2 <https://wg21.link/P0492R2>`__ | Proposed Resolution of C++17 National Body Comments for Filesystems | 2017-02 (Kona) | |Complete| | 7 | |
| 101 | `P0518R1 <https://wg21.link/P0518R1>`__ | Allowing copies as arguments to function objects given to parallel algorithms in response to CH11 | 2017-02 (Kona) | |Nothing To Do| | ||
| 102 | `P0523R1 <https://wg21.link/P0523R1>`__ | Wording for CH 10: Complexity of parallel algorithms | 2017-02 (Kona) | |Nothing To Do| | ||
| 103 | `P0548R1 <https://wg21.link/P0548R1>`__ | common_type and duration | 2017-02 (Kona) | |Complete| | 5 | |
| 104 | `P0558R1 <https://wg21.link/P0558R1>`__ | Resolving atomic<T> named base class inconsistencies | 2017-02 (Kona) | |Complete| | ||
| 105 | `P0574R1 <https://wg21.link/P0574R1>`__ | Algorithm Complexity Constraints and Parallel Overloads | 2017-02 (Kona) | |Nothing To Do| | ||
| 106 | `P0599R1 <https://wg21.link/P0599R1>`__ | noexcept for hash functions | 2017-02 (Kona) | |Complete| | 5 | |
| 107 | `P0604R0 <https://wg21.link/P0604R0>`__ | Resolving GB 55, US 84, US 85, US 86 | 2017-02 (Kona) | |Complete| | ||
| 108 | `P0607R0 <https://wg21.link/P0607R0>`__ | Inline Variables for the Standard Library | 2017-02 (Kona) | |In Progress| | 6 | The parts of P0607 that are not done are the ``<regex>`` bits |
| 109 | `P0618R0 <https://wg21.link/P0618R0>`__ | Deprecating <codecvt> | 2017-02 (Kona) | |Complete| | 15 | |
| 110 | `P0623R0 <https://wg21.link/P0623R0>`__ | Final C++17 Parallel Algorithms Fixes | 2017-02 (Kona) | |Nothing To Do| | ||
| 111 | ||||||
| 112 | `P0682R1 <https://wg21.link/P0682R1>`__ | Repairing elementary string conversions | 2017-07 (Toronto) | |||
| 113 | `P0739R0 <https://wg21.link/P0739R0>`__ | Some improvements to class template argument deduction integration into the standard library | 2017-07 (Toronto) | |Complete| | 5 |