Standardization

2022-07 Mailing Available

The 2022-07 mailing of new standards papers is now available.

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
P0009R18 MDSPAN Christian Trott 2022-07-13 2022-07 P0009R17 All of WG21
P1018R17 C++ Language Evolution status pandemic edition  2022/06–2022/07 JF Bastien 2022-07-09 2022-07 P1018R16 EWG Evolution,All of WG21
P1083R6 Move resource_adaptor from Library TS to the C++ WP Pablo Halpern 2022-07-08 2022-07 P1083R5 LEWG Library Evolution
P1255R8 A view of 0 or 1 elements: views::maybe Steve Downey 2022-07-11 2022-07 P1255R7 SG9 Ranges,LEWG Library Evolution
P1642R11 Freestanding Library: Easy [utilities], [ranges], and [iterators] Ben Craig 2022-07-01 2022-07 P1642R10 CWG Core
P1684R3 mdarray: An Owning Multidimensional Array Analog of mdspan Christian Trott 2022-07-14 2022-07 P1684R2 LEWG Library Evolution
P1899R3 stride_view Christopher Di Bella, Tim Song 2022-07-10 2022-07 P1899R2 SG9 Ranges,LEWG Library Evolution
P1967R8 #embed - a simple, scannable preprocessor-based resource acquisition method JeanHeyd Meneide 2022-06-28 2022-07 P1967R7 EWG Evolution
P2047R3 An allocator-aware optional type Nina Ranns 2022-07-08 2022-07 P2047R2 LEWG Library Evolution
P2079R3 System execution context Lee Howes 2022-07-15 2022-07 P2079R2 SG1 Concurrency and Parallelism,LEWG Library Evolution
P2165R4 Compatibility between tuple, pair and tuple-like objects Corentin Jabot 2022-07-15 2022-07 P2165R3 LEWG Library Evolution
P2248R5 Enabling list-initialization for algorithms Giuseppe D'Angelo 2022-06-29 2022-07 P2248R4 SG6 Numerics,SG9 Ranges,LEWG Library Evolution
P2295R6 Support for UTF-8 as a portable source file encoding Corentin Jabot 2022-07-01 2022-07 P2295R5 SG22 Compatability,EWG Evolution
P2361R5 Unevaluated strings Corentin Jabot 2022-07-09 2022-07 P2361R4 EWG Evolution
P2374R4 views::cartesian_product Sy Brand 2022-07-13 2022-07 P2374R3 LWG Library
P2404R3 Move-only types for equality_comparable_with, totally_ordered_with, and three_way_comparable_with Justin Bassett 2022-07-08 2022-07 P2404R2 SG9 Ranges,LEWG Library Evolution,LWG Library
P2417R2 A more constexpr bitset Daniil Goncharov 2022-07-16 2022-07 P2417R1 LWG Library
P2419R2 Clarify handling of encodings in localized formatting of chrono types Victor Zverovich 2022-07-15 2022-07 P2419R1 LWG Library
P2460R2 Relax requirements on wchar_t to match existing practices Corentin Jabot 2022-07-15 2022-07 P2460R1 SG22 Compatability,CWG Core
P2474R2 views::repeat Michał Dominiak 2022-07-13 2022-07 P2474R1 SG9 Ranges,LWG Library
P2481R1 Forwarding reference to specific type/template Barry Revzin 2022-07-15 2022-07 P2481R0 EWG Evolution
P2494R2 Relaxing range adaptors to allow for move only types Michał Dominiak 2022-07-13 2022-07 P2494R1 SG9 Ranges,LWG Library
P2513R4 char8_t Compatibility and Portability Fix JeanHeyd Meneide 2022-06-26 2022-07 P2513R3 EWG Evolution
P2547R1 Language support for customisable functions Lewis Baker 2022-07-16 2022-07 P2547R0 EWG Evolution
P2548R0 copyable_function Michael Florian Hava 2022-07-13 2022-07   LEWG Library Evolution
P2549R1 std::unexpected should have error() as member accessor Yihe Li 2022-07-04 2022-07 P2549R0 LWG Library
P2561R0 operator?? Barry Revzin 2022-07-10 2022-07   EWG Evolution
P2579R0 Mitigation strategies for P2036 "Changing scope for lambda trailing-return-type" Corentin Jabot 2022-07-01 2022-07   EWG Evolution,CWG Core
P2585R1 Improving default container formatting Barry Revzin 2022-07-15 2022-07 P2585R0 LEWG Library Evolution
P2587R1 to_string or not to_string Victor Zverovich 2022-06-24 2022-07 P2587R0 SG16 Unicode
P2590R2 Explicit lifetime management Timur Doumler 2022-07-15 2022-07 P2590R1 CWG Core,LWG Library
P2592R1 Hashing support for std::chrono value classes Giuseppe D'Angelo 2022-06-30 2022-07 P2592R0 LEWG Library Evolution
P2601R1 Make redundant empty angle brackets optional Justin Cooke 2022-07-16 2022-07 P2601R0 EWG Evolution,CWG Core
P2602R1 Poison Pills are Too Toxic Barry Revzin 2022-07-11 2022-07 P2602R0 LEWG Library Evolution
P2609R1 Relaxing Ranges Just A Smidge John Eivind Helset 2022-06-29 2022-07 P2609R0 SG9 Ranges,LEWG Library Evolution
P2610R0 2022-07 Library Evolution Polls Bryce Adelstein Lelbach 2022-06-29 2022-07   LEWG Library Evolution
P2613R1 Add the missing `empty` to `mdspan` Yihe Le 2022-06-29 2022-07 P2613R0 LEWG Library Evolution
P2614R0 Deprecate numeric_limits::has_denorm Matthias Kretz 2022-07-06 2022-07   SG6 Numerics,LEWG Library Evolution
P2615R0 Meaningful exports S. Davis Herring 2022-07-01 2022-07   CWG Core
P2616R0 Making std::atomic notification/wait operations usable in more situations Lewis Baker 2022-07-05 2022-07   SG1 Concurrency and Parallelism
P2617R0 Responses to NB comments on DTS 12907 "Extensions to C++ for Transactional Memory Version 2" Jens Maurer 2022-07-15 2022-07   SG5 Transactional Memory,CWG Core
P2618R0 C++ Standard Library Issues to be moved in Virtual Plenary, Jul. 2022 Jonathan Wakely 2022-07-15 2022-07   All of WG21
P2620R0 Lifting artificial restriction on universal character names Corentin Jabot 2022-07-09 2022-07   SG16 Unicode,SG22 Compatability,EWG Evolution
P2621R0 UB? In my Lexer? Corentin Jabot 2022-07-09 2022-07   SG22 Compatability,EWG Evolution
P2622R0 Core Language Working Group "ready" Issues for the July, 2022 meeting Jens Maurer 2022-07-15 2022-07   All of WG21
P2623R0 implicit constant initialization Jarrad J. Waterloo 2022-07-13 2022-07   EWG Evolution
P2624R0 Make operations on bools more portable Justin Cooke 2022-07-16 2022-07   CWG Core

Advancing the State of the Art for std::unordered_map Implementations -- boost.org

Several Boost authors have embarked on a project to improve the performance of boost's associative containers.

Boost.Unordered

by boost.org

About the improvements:

Boost.Unordered's new implementation of std::unordered_map (and multimap, set and multiset variants), and to extend its portfolio of available containers to offer faster, non-standard alternatives based on open addressing.

The first goal of the project has been completed in time for Boost 1.80 (due August 2022). We describe here the technical innovations introduced in boost::unordered_map that makes it the fastest implementation of std::unordered_map on the market.

 

2022-06 Mailing Available

The 2022-06 mailing of new standards papers is now available.

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
P0009R17 MDSPAN Christian Trott 2022-06-15 2022-06 P0009R16 LWG Library
P0429R9 A Standard flat_map Zach Laine 2022-06-17 2022-06 P0429R8 LWG Library
P0447R20 Introduction of std::hive to the standard library Matt Bentley 2022-06-14 2022-06 P0447R19 SG14 Low Latency,LEWG Library Evolution,All of WG21
P0792R10 function_ref: a non-owning reference to a Callable Vittorio Romeo 2022-06-14 2022-06 P0792R9 LEWG Library Evolution,LWG Library
P0957R8 Proxy: A Polymorphic Programming Library Mingxin Wang 2022-06-15 2022-06 P0957R7 LEWG Library Evolution
P1018R16 C++ Language Evolution status  pandemic edition  2022/02–2022/06 JF Bastien 2022-06-16 2022-06 P1018R15 EWG Evolution,All of WG21
P1144R6 Object relocation in terms of move plus destroy Arthur O'Dwyer 2022-06-09 2022-06 P1144R5 EWG Evolution,LEWG Library Evolution
P1222R4 A Standard flat_set Zach Laine 2022-06-13 2022-06 P1222R3 LWG Library
P1223R5 find_last Zach Laine 2022-06-17 2022-06 P1223R4 LWG Library
P1642R10 Freestanding Library: Easy [utilities], [ranges], and [iterators] Ben Craig 2022-06-18 2022-06 P1642R9 CWG Core,LWG Library
P1673R9 A free function linear algebra interface based on the BLAS Mark Hoemmen 2022-06-14 2022-06 P1673R8 SG6 Numerics,LEWG Library Evolution
P1689R5 Format for describing dependencies of source files Ben Boeckel 2022-06-06 2022-06 P1689R4 SG15 Tooling,SG16 Unicode
P1774R8 Portable assumptions Timur Doumler 2022-06-14 2022-06 P1774R7 CWG Core
P1839R5 Accessing object representations Timur Doumler 2022-06-16 2022-06 P1839R4 CWG Core
P1967R7 #embed - a simple, scannable preprocessor-based resource acquisition method JeanHeyd Meneide 2022-06-23 2022-06 P1967R6 EWG Evolution
P2167R2 Improved Proposed Wording for LWG 2114 (contextually convertible to bool) Daniel Krügler 2022-06-15 2022-06 P2167R1 LWG Library
P2278R4 cbegin should always return a constant iterator Barry Revzin 2022-06-17 2022-06 P2278R3 LEWG Library Evolution
P2490R3 Zero-overhead exception stacktraces Ed Catmur 2022-06-20 2022-06   LEWG Library Evolution
P2502R2 std::generator: Synchronous Coroutine Generator for Ranges Casey Carter 2022-06-03 2022-06 P2502R1 LWG Library
P2505R3 Monadic Functions for std::expected Jeff Garland 2022-06-15 2022-06 P2505R2 LEWG Library Evolution,LWG Library
P2505R4 Monadic Functions for std::expected Jeff Garland 2022-06-17 2022-06 P2505R3 LEWG Library Evolution,LWG Library
P2513R3 char8_t Compatibility and Portability Fix JeanHeyd Meneide 2022-06-17 2022-06 P2513R2 EWG Evolution
P2551R2 Clarify intent of P1841 numeric traits Matthias Kretz 2022-06-22 2022-06 P2551R1 LEWG Library Evolution
P2562R1 constexpr Stable Sorting Oliver Rosten 2022-06-14 2022-06 P2562R0 LEWG Library Evolution,LWG Library
P2570R0 On side effects in contract annotations Andrzej Krzemieński 2022-06-08 2022-06   SG21 Contracts
P2572R0 std::format() fill character allowances Tom Honermann 2022-06-11 2022-06   SG16 Unicode,LEWG Library Evolution
P2575R0 2022-05 Library Evolution Poll Outcomes Bryce Adelstein Lelbach 2022-06-22 2022-06   LEWG Library Evolution
P2582R1 Wording for class template argument deduction from inherited constructors Timur Doumler 2022-05-23 2022-06 P2582R0 CWG Core
P2590R1 Explicit lifetime management Timur Doumler 2022-06-15 2022-06 P2590R0 CWG Core,LWG Library
P2591R1 Concatenation of strings and string views Giuseppe D'Angelo 2022-06-02 2022-06 P2591R0 LEWG Library Evolution
P2594R0 Slides: Allow programmer to control and detect coroutine elision (P2477R2 Presentation)) Chuanqi Xu 2022-05-26 2022-06   EWG Evolution,LEWG Library Evolution
P2596R0 Improve std::hive::reshape Arthur O'Dwyer 2022-06-09 2022-06   SG14 Low Latency,LEWG Library Evolution
P2598R0 "Changing scope for lambda trailing-return-type" (P2036) should not be a DR Ville Voutilainen 2022-05-29 2022-06   EWG Evolution,CWG Core
P2599R0 mdspan::size_type should be index_type Nevin Liber 2022-06-07 2022-06   LEWG Library Evolution
P2599R1 mdspan::size_type should be index_type Nevin Liber 2022-06-13 2022-06 P2599R0 LEWG Library Evolution
P2599R2 index _type & size_type in mdspan Nevin Liber 2022-06-23 2022-06 P2599R1 LEWG Library Evolution,LWG Library
P2600R0 A minimal ADL restriction to avoid ill-formed template instantiation Matthias Kretz 2022-06-15 2022-06   EWGI SG17: EWG Incubator,EWG Evolution
P2601R0 To make redundant empty angle brackets optional for class template argument lists Justin Cooke 2022-06-23 2022-06   EWG Evolution,CWG Core
P2602R0 Poison Pills are Too Toxic Barry Revzin 2022-06-17 2022-06   LEWG Library Evolution
P2603R0 member function pointer to function pointer Jarrad Waterloo 2022-06-15 2022-06   EWG Evolution,LEWG Library Evolution
P2604R0 MDSPAN: rename pointer and contiguous Christian Trott 2022-06-15 2022-06   LEWG Library Evolution,LWG Library
P2605R0 SG16: Unicode meeting summaries 2022-01-12 through 2022-06-08 Tom Honermann 2022-06-15 2022-06   SG16 Unicode
P2607R0 Let alignas specify minimum alignment Justin Cooke 2022-06-23 2022-06   CWG Core
P2608R0 Allow multiple init-statements Justin Cooke 2022-06-23 2022-06   EWG Evolution
P2609R0 Relaxing Ranges Just A Smidge John Eivind Helset 2022-06-23 2022-06   SG9 Ranges
P2613R0 Add the missing `empty` to `mdspan` Yihe Le 2022-06-23 2022-06   LEWG Library Evolution

2022-05 Mailing Available

The 2022-05 mailing of new standards papers is now available.

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
N4912 2022-11 Kona hybrid meeting information Herb Sutter 2022-05-05 2022-05   All of WG21
N4913 PL22.16/WG21 agenda: 25 July 2022, Virtual Meeting John Spicer 2022-05-22 2022-05   All of WG21
P0543R1 Saturation arithmetic Jens Maurer 2022-05-02 2022-05 P0543R0 SG6 Numerics,LEWG Library Evolution
P0792R9 function_ref: a non-owning reference to a Callable Vittorio Romeo 2022-05-20 2022-05 P0792R8 LEWG Library Evolution,LWG Library
P0901R9 Size feedback in operator new Chris Kennelly 2022-04-26 2022-05 P0901R8 CWG Core,LWG Library
P1021R6 Filling holes in Class Template Argument Deduction Mike Spertus 2022-05-22 2022-05 P1021R5 CWG Core
P1255R7 A view of 0 or 1 elements: views::maybe Steve Downey 2022-05-09 2022-05 P1255R6 SG9 Ranges
P1642R9 Freestanding Library: Easy [utilities], [ranges], and [iterators] Ben Craig 2022-05-15 2022-05 P1642R8 CWG Core,LWG Library
P1673R8 A free function linear algebra interface based on the BLAS Mark Hoemmen 2022-05-15 2022-05 P1673R7 SG6 Numerics,LEWG Library Evolution
P1674R2 Evolving a Standard C++ Linear Algebra Library from the BLAS Mark Hoemmen 2022-05-15 2022-05 P1674R1 LEWG Library Evolution
P1774R7 Portable assumptions Timur Doumler 2022-05-15 2022-05 P1774R6 CWG Core
P1967R6 #embed - a simple, scannable preprocessor-based resource acquisition method JeanHeyd Meneide 2022-05-02 2022-05 P1967R5 EWG Evolution
P2286R8 Formatting Ranges Barry Revzin 2022-05-16 2022-05 P2286R7 LEWG Library Evolution
P2429R0 Concepts Error Messages for Humans Sy Brand 2022-05-16 2022-05   SG15 Tooling
P2445R1 forward_like Gašper Ažman 2022-05-13 2022-05 P2445R0 LWG Library
P2460R1 Relax requirements on wchar_t to match existing practices Corentin Jabot 2022-05-12 2022-05 P2460R0 SG22 Compatability,CWG Core
P2472R3 make function_ref more functional Jarrad J. Waterloo 2022-05-12 2022-05 P2472R2 LEWG Library Evolution
P2510R3 Formatting pointers Mark de Wever 2022-05-22 2022-05 P2510R2 LWG Library
P2513R2 char8_t Compatibility and Portability Fix JeanHeyd Meneide 2022-05-12 2022-05 P2513R1 EWG Evolution
P2542R2 views::concat Hui Xie 2022-05-11 2022-05 P2542R1 SG9 Ranges,LEWG Library Evolution
P2551R1 Clarify intent of P1841 numeric traits Matthias Kretz 2022-05-09 2022-05 P2551R0 LEWG Library Evolution
P2558R1 Add @, $, and ` to the basic character set Steve Downey 2022-05-11 2022-05 P2558R0 SG16 Unicode,SG22 Compatability
P2577R1 C++ Modules Discovery in Prebuilt Library Releases Daniel Ruoso 2022-04-30 2022-05 P2577R0 SG15 Tooling
P2577R2 C++ Modules Discovery in Prebuilt Library Releases Daniel Ruoso 2022-05-17 2022-05 P2577R1 SG15 Tooling
P2580R0 Tuple protocol for C-style arrays T[N] Paolo Di Giglio 2022-05-22 2022-05   LEWGI SG18: LEWG Incubator,LEWG Library Evolution
P2581R0 Specifying the Interoperability of Binary Module Interface Files Daniel Ruoso 2022-04-26 2022-05   SG15 Tooling
P2582R0 Wording for class template argument deduction from inherited constructors Timur Doumler 2022-05-15 2022-05   CWG Core
P2584R0 A More Composable from_chars Corentin Jabot 2022-05-12 2022-05   LEWG Library Evolution
P2585R0 Improving default container formatting Barry Revzin 2022-05-15 2022-05   LEWG Library Evolution
P2587R0 to_string or not to_string Victor Zverovich 2022-05-14 2022-05   SG16 Unicode,LEWGI SG18: LEWG Incubator
P2588R0 Relax std::barrier phase completion step guarantees Gonzalo Brito 2022-05-22 2022-05   SG1 Concurrency and Parallelism,LEWG Library Evolution
P2589R0 static operator[] Nevin Liber 2022-05-12 2022-05   EWG Evolution
P2590R0 Explicit lifetime management Timur Doumler 2022-05-16 2022-05   CWG Core,LWG Library
P2591R0 Concatenation of strings and string views Giuseppe D'Angelo 2022-05-19 2022-05   LEWG Library Evolution
P2592R0 Hashing support for std::chrono value classes Giuseppe D'Angelo 2022-05-20 2022-05   LEWG Library Evolution
P2593R0 Allowing static_assert(false) Barry Revzin 2022-05-21 2022-05   EWG Evolution

2022-04 Mailing Available

The 2022-04 mailing of new standards papers is now available.

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
P0429R8 A Standard flat_map Zach Laine 2022-04-18 2022-04 P0429R7 LWG Library
P0957R7 Proxy: A Polymorphic Programming Library Mingxin Wang 2022-04-19 2022-04 P0957R6 LEWGI SG18: LEWG Incubator,LEWG Library Evolution
P1061R2 Structured Bindings can introduce a Pack Barry Revzin 2022-04-22 2022-04 P1061R1 EWG Evolution
P1169R4 static operator() Barry Revzin 2022-04-10 2022-04 P1169R3 CWG Core
P1222R3 A Standard flat_set Zach Laine 2022-04-18 2022-04 P1222R2 LWG Library
P1223R4 find_last Zach Laine 2022-04-15 2022-04 P1223R3 LEWG Library Evolution,LWG Library
P1467R9 Extended floating-point types and standard names David Olsen 2022-04-22 2022-04 P1467R8 CWG Core,LWG Library
P1642R8 Freestanding Library: Easy [utilities], [ranges], and [iterators] Ben Craig 2022-04-13 2022-04 P1642R7 LWG Library
P1673R7 A free function linear algebra interface based on the BLAS Mark Hoemmen 2022-04-14 2022-04 P1673R6 LEWG Library Evolution
P1674R1 Evolving a Standard C++ Linear Algebra Library from the BLAS Mark Hoemmen 2022-04-14 2022-04 P1674R0 LEWG Library Evolution
P1684R2 mdarray: An Owning Multidimensional Array Analog of mdspan Christian Trott 2022-04-24 2022-04 P1684R1 LEWG Library Evolution
P1967R5 #embed - a simple, scannable preprocessor-based resource acquisition method JeanHeyd Meneide 2022-04-13 2022-04 P1967R4 EWG Evolution
P2071R2 Named universal character escapes Tom Honermann 2022-03-27 2022-04 P2071R1 CWG Core
P2093R14 Formatted output Victor Zverovich 2022-03-25 2022-04 P2093R13 LWG Library
P2174R1 Compound Literals Zhihao Yuan 2022-04-15 2022-04 P2174R0 EWG Evolution
P2198R5 Freestanding Feature-Test Macros and Implementation-Defined Extensions Ben Craig 2022-04-13 2022-04 P2198R4 LWG Library
P2266R3 Simpler implicit move Arthur O'Dwyer 2022-03-26 2022-04 P2266R2 CWG Core
P2278R3 cbegin should always return a constant iterator Barry Revzin 2022-04-11 2022-04 P2278R2 LEWG Library Evolution
P2280R4 Using unknown references in constant expressions Barry Revzin 2022-04-10 2022-04 P2280R3 CWG Core
P2286R7 Formatting Ranges Barry Revzin 2022-04-22 2022-04 P2286R6 LEWG Library Evolution
P2300R5 `std::execution` Michał Dominiak 2022-04-22 2022-04 P2300R4 SG1 Concurrency and Parallelism,LEWG Library Evolution
P2302R4 std::ranges::contains Christopher Di Bella 2022-04-16 2022-04 P2302R3 All of WG21
P2305R5 Type inference for object definitions Jens Gustedt 2022-04-08 2022-04 P2305R4 SG22 Compatability
P2322R6 ranges::fold Barry Revzin 2022-04-22 2022-04 P2322R5 LEWG Library Evolution
P2400R3 Library Evolution Report: 2021-09-28 to 2022-01-25 Bryce Adelstein Lelbach 2022-04-21 2022-04 P2400R2 All of WG21
P2408R5 Ranges iterators as inputs to non-Ranges algorithms David Olsen 2022-04-22 2022-04 P2408R4 LWG Library
P2472R2 make function_ref more functional Jarrad J. Waterloo 2022-04-14 2022-04 P2472R1 LEWG Library Evolution
P2505R2 Monadic Functions for std::expected Jeff Garland 2022-04-15 2022-04 P2505R1 LEWG Library Evolution,LWG Library
P2510R2 Formatting pointers Mark de Wever 2022-04-14 2022-04 P2510R1 LWG Library
P2538R1 ADL-proof std::projected Arthur O'Dwyer 2022-04-01 2022-04 P2538R0 LEWG Library Evolution,LWG Library
P2539R1 Should the output of std::print to a terminal be synchronized with the underlying stream? Victor Zverovich 2022-04-11 2022-04 P2539R0 LEWG Library Evolution
P2542R1 views::concat Hui Xie 2022-03-28 2022-04 P2542R0 SG9 Ranges,LEWG Library Evolution
P2546R1 Debugging Support René Ferdinand Rivera Morell 2022-04-10 2022-04 P2546R0 LEWG Library Evolution
P2559R0 Plan for Concurrency Technical Specification Version 2 Bryce Adelstein Lelbach 2022-04-01 2022-04   SG1 Concurrency and Parallelism,EWG Evolution,LEWG Library Evolution
P2573R0 = delete("should have a reason"); Yihe Li 2022-04-14 2022-04   EWGI SG17: EWG Incubator,EWG Evolution
P2574R0 2022-05 Library Evolution Polls Bryce Adelstein Lelbach 2022-04-22 2022-04   LEWG Library Evolution
P2576R0 The constexpr specifier for object definitions Jens Gustedt 2022-04-08 2022-04   SG22 Compatability
P2577R0 C++ Modules Discovery in Prebuilt Library Releases Daniel Ruoso 2022-04-11 2022-04   SG15 Tooling

2022-03 Mailing Available

The 2022-03 mailing of new standards papers is now available.

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
N4908 Working Draft, C++ Extensions for Library Fundamentals, Version 3 Thomas Köppe 2022-02-19 2022-03   All of WG21
N4909 Editor's Report: C++ Extensions for Library Fundamentals, Version 3 Thomas Köppe 2022-02-19 2022-03   All of WG21
N4910 Working Draft, Standard for Programming Language C++ Thomas Köppe 2022-03-17 2022-03   All of WG21
N4911 Editors' Report - Programming Languages - C++ Thomas Köppe 2022-03-17 2022-03   All of WG21
P0009R16 MDSPAN Christian Trott 2022-03-15 2022-03 P0009R15 LWG Library
P0957R6 Proxy: A Polymorphic Programming Library Mingxin Wang 2022-03-15 2022-03 P0957R5 LEWGI SG18: LEWG Incubator,LEWG Library Evolution
P1083R5 Move resource_adaptor from Library TS to the C++ WP Pablo Halpern 2022-02-24 2022-03 P1083R4 LEWG Library Evolution
P1684R1 mdarray: An Owning Multidimensional Array Analog of mdspan Christian Trott 2022-03-20 2022-03 P1684R0 LEWG Library Evolution
P1708R6 Simple Statistical Functions Richard Dosselman 2022-03-15 2022-03 P1708R5 SG6 Numerics,SG19 Machine Learning,LEWG Library Evolution
P1839R4 Accessing Object Representations Krystian Stasiowski 2022-03-16 2022-03 P1839R3 CWG Core
P2264R3 Make assert() macro user friendly for C and C++ Peter Sommerlad 2022-02-27 2022-03 P2264R2 SG22 Compatability,LEWG Library Evolution
P2290R3 Delimited escape sequences Corentin Jabot 2022-02-25 2022-03 P2290R2 SG22 Compatability,CWG Core
P2465R3 Standard Library Modules std and std.compat Stephan T. Lavavej 2022-03-11 2022-03 P2465R2 CWG Core,LWG Library
P2510R1 Formatting pointers Mark de Wever 2022-03-20 2022-03 P2510R0 LWG Library
P2511R1 Beyond operator(): NTTP callables in type-erased call wrappers Zhihao Yuan 2022-03-15 2022-03 P2511R0 LEWG Library Evolution
P2521R2 Contract support -- Working Paper Andrzej Krzemieński 2022-03-15 2022-03 P2521R1 SG21 Contracts
P2539R0 Should the output of std::print to a terminal be synchronized with the underlying stream? Victor Zverovich 2022-03-11 2022-03   LEWG Library Evolution
P2540R1 Empty Product for certain Views Steve Downey 2022-03-14 2022-03 P2540R0 SG9 Ranges,LEWG Library Evolution
P2553R1 Make mdspan size_type controllable Christian Trott 2022-03-15 2022-03 P2553R0 LEWG Library Evolution,LWG Library
P2555R1 Naming improvements for std::execution Jens Maurer 2022-03-13 2022-03 P2555R0 LEWG Library Evolution
P2558R0 Add @, $, and ` to the basic character set Steve Downey 2022-03-16 2022-03   SG16 Unicode,EWGI SG17: EWG Incubator,SG22 Compatability
P2560R0 Comparing value- and type-based reflection Matúš Chochlı́k 2022-02-23 2022-03   SG7 Reflection
P2562R0 constexpr Stable Sorting Oliver Rosten 2022-03-09 2022-03   LEWG Library Evolution,LWG Library
P2564R0 consteval needs to propagate up Barry Revzin 2022-03-14 2022-03   EWG Evolution
P2565R0 Supporting User-Defined Attributes Bret Brown 2022-03-15 2022-03   SG15 Tooling
P2568R0 Proposal of std::map::at_ptr Andrew Tomazos 2022-03-18 2022-03   LEWG Library Evolution
P2569R0 *_HAS_SUBNORM==0 implies what? Fred Tydeman 2022-03-18 2022-03   SG6 Numerics,SG22 Compatability

Open letter for new C++ scope/charter. -- René Ferdinand Rivera Morell

Should the C++ standard change to include its ecosystem?

Open letter for new C++ scope/charter

by René Ferdinand Rivera Morell

From the letter:

We are writing asking for consideration towards changes to the wording of the "ISO/IEC JTC1/SC22/WG21 STATEMENT OF SCOPE". Which is currently stated as:

Development and maintenance of ISO/IEC Standards, Technical Specifications, and Technical Reports related to the programming language C++.

Reddit discussion here.

2022-02 Mailing Available

The 2022-02 mailing of new standards papers is now available.

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
N4903 PL22.16/WG21 agenda: 7 February 2022, Virtual Meeting John Spicer 2022-01-24 2022-02   All of WG21
N4904 WG21 admin telecon meetings: 2022 summer and autumn (revision 1) Herb Sutter 2022-01-24 2022-02   All of WG21
N4905 WG21 2022-01 Admin telecon minutes Nina Ranns 2022-02-01 2022-02   All of WG21
N4906 Transactional Memory TS2 Michael Wong 2022-02-18 2022-02   All of WG21
N4907 WG21 2022-02 Virtual Meeting Minutes of Meeting Nina Ranns 2022-02-17 2022-02   All of WG21
P0009R15 MDSPAN Christian Trott 2022-02-14 2022-02 P0009R14 LWG Library
P0323R12 std::expected JF Bastien 2022-02-21 2022-02 P0323R11 LWG Library
P0447R19 Introduction of std::hive to the standard library Matt Bentley 2022-02-17 2022-02 P0447R18 SG14 Low Latency,LEWG Library Evolution,All of WG21
P0561R6 An RAII Interface for Deferred Reclamation Geoffrey Romer 2022-02-02 2022-02 P0561R5 LWG Library
P0792R7 function_ref: a non-owning reference to a Callable Vittorio Romeo 2022-02-14 2022-02 P0792R6 LEWG Library Evolution,LWG Library
P0792R8 function_ref: a non-owning reference to a Callable Vittorio Romeo 2022-02-16 2022-02 P0792R7 LEWG Library Evolution,LWG Library
P0957R5 Proxy: A Polymorphic Programming Library Mingxin Wang 2022-02-14 2022-02 P0957R4 LEWGI SG18: LEWG Incubator
P1018R15 C++ Language Evolution status  pandemic edition  2022/01–2022/02 JF Bastien 2022-02-14 2022-02 P1018R14 EWG Evolution,All of WG21
P1202R4 Asymmetric Fences David Goldblatt 2022-02-14 2022-02 P1202R3 LEWG Library Evolution,LWG Library
P1223R3 find_last Zach Laine 2022-02-14 2022-02 P1223R2 LEWG Library Evolution,LWG Library
P1478R7 Byte-wise atomic memcpy Hans Boehm 2022-02-05 2022-02 P1478R6 LWG Library
P1664R7 reconstructible_range - a concept for putting ranges back together JeanHeyd Meneide 2022-02-15 2022-02 P1664R6 SG9 Ranges,LEWG Library Evolution
P1774R6 Portable assumptions Timur Doumler 2022-02-15 2022-02 P1774R5 CWG Core
P1839R3 Accessing Object Representations Krystian Stasiowski 2022-02-18 2022-02 P1839R2 CWG Core
P1841R3 Wording for Individually Specializable Numeric Traits Walter E Brown 2022-02-14 2022-02 P1841R2 LWG Library
P1885R10 Naming Text Encodings to Demystify Them Corentin Jabot 2022-02-14 2022-02 P1885R9 LEWG Library Evolution
P2093R13 Formatted output Victor Zverovich 2022-02-09 2022-02 P2093R12 LWG Library
P2214R2 A Plan for C++23 Ranges Barry Revzin 2022-02-18 2022-02 P2214R1 LEWG Library Evolution
P2416R2 Presentation of requirements in the standard library Jens Maurer 2022-02-14 2022-02 P2416R1 LWG Library
P2438R2 std::string::substr() && Federico Kircheis 2022-02-04 2022-02 P2438R1 LWG Library
P2441R2 views::join_with Barry Revzin 2022-01-28 2022-02 P2441R1 LEWG Library Evolution
P2446R2 views::as_rvalue Barry Revzin 2022-02-14 2022-02 P2446R1 LEWG Library Evolution
P2448R2 Relaxing some constexpr restrictions Barry Revzin 2022-01-27 2022-02 P2448R1 CWG Core
P2452R0 2021 October Library Evolution and Concurrency Polls on Networking and Executors Bryce Adelstein Lelbach 2022-02-15 2022-02   LEWG Library Evolution
P2453R0 2021 October Library Evolution Poll Outcomes Bryce Adelstein Lelbach 2022-02-15 2022-02   SG4 Networking,LEWG Library Evolution
P2458R1 2022 January Library Evolution Polls Bryce Adelstein Lelbach 2022-01-26 2022-02 P2458R0 LEWG Library Evolution
P2459R0 2022 January Library Evolution Poll Outcomes Bryce Adelstein Lelbach 2022-02-15 2022-02   LEWG Library Evolution
P2465R2 Standard Library Modules std and std.compat Stephan T. Lavavej 2022-02-02 2022-02 P2465R1 CWG Core,LWG Library
P2467R1 Support exclusive mode for fstreams Jonathan Wakely 2022-02-17 2022-02 P2467R0 LWG Library
P2472R1 make function_ref more functional Jarrad J. Waterloo 2022-02-15 2022-02 P2472R0 LEWG Library Evolution
P2495R0 Interfacing stringstreams with string_view Michael Hava 2022-02-13 2022-02   LEWG Library Evolution
P2502R1 std::generator: Synchronous Coroutine Generator for Ranges Casey Carter 2022-01-25 2022-02 P2502R0 LEWG Library Evolution
P2505R1 Monadic Functions for std::expected Jeff Garland 2022-02-15 2022-02 P2505R0 LEWG Library Evolution,LWG Library
P2506R0 std::lazy: a coroutine for deferred execution Casey Carter 2022-02-02 2022-02   LEWG Library Evolution
P2513R1 char8_t Compatibility and Portability Fix JeanHeyd Meneide 2022-02-14 2022-02 P2513R0 EWG Evolution
P2521R1 Contract support -- Working Paper Andrzej Krzemieński 2022-02-15 2022-02 P2521R0 SG21 Contracts
P2528R0 C/C++ Identifier Security using Unicode Standard Annex 39 Reini Urban 2022-01-22 2022-02   SG16 Unicode,EWG Evolution,CWG Core
P2529R0 generator should have T&& reference_type Mathias Stearn 2022-01-25 2022-02   LEWG Library Evolution
P2530R0 Why Hazard Pointers should be in C++26 Maged Michael 2022-02-14 2022-02   SG1 Concurrency and Parallelism
P2531R0 C++ Standard Library Issues to be moved in Virtual Plenary, Feb. 2022 Jonathan Wakely 2022-01-31 2022-02   All of WG21
P2532R0 Removing exception_ptr from the Receiver Concepts Eric Niebler 2022-02-01 2022-02   LEWG Library Evolution
P2533R0 Core Language Working Group "ready" Issues for the February, 2022 Meeting William M. (Mike) Miller 2022-02-21 2022-02   All of WG21
P2534R0 Slides: function_ref in the wild (P0792R7 presentation) Zhihao Yuan 2022-02-16 2022-02   LEWG Library Evolution
P2535R0 Message fences Olivier Giroux 2022-02-02 2022-02   SG1 Concurrency and Parallelism
P2536R0 Distributing C++ Module Libraries with dependencies json files. Olga Arkhipova 2022-02-03 2022-02   SG15 Tooling
P2537R0 Relax va_start Requirements to Match C JeanHeyd Meneide 2022-02-14 2022-02   LEWG Library Evolution
P2538R0 ADL-proof std::projected Arthur O'Dwyer 2022-02-15 2022-02   LEWG Library Evolution,LWG Library
P2540R0 Empty Product for certain Views Steve Downey 2022-02-15 2022-02   SG9 Ranges
P2541R0 Consider renaming remove_quals Corentin Jabot 2022-02-15 2022-02   SG22 Compatability
P2542R0 views::concat Hui Xie 2022-02-18 2022-02   SG9 Ranges,LEWG Library Evolution
P2544R0 C++ exceptions are becoming more and more problematic Thomas Neumann 2022-02-12 2022-02   EWGI SG17: EWG Incubator
P2545R0 Why RCU Should be in C++26 Paul E. McKenney 2022-02-14 2022-02   SG1 Concurrency and Parallelism,LEWG Library Evolution
P2546R0 Debugging Support René Ferdinand Rivera Morell 2022-02-14 2022-02   SG15 Tooling,LEWG Library Evolution
P2547R0 Language support for customisable functions Lewis Baker 2022-02-15 2022-02   EWG Evolution
P2549R0 std::unexpected should have error() as member accessor Yihe Li 2022-02-13 2022-02   LEWGI SG18: LEWG Incubator,LEWG Library Evolution
P2550R0 ranges::copy should say output_iterator somewhere Barry Revzin 2022-02-16 2022-02   LWG Library
P2551R0 Clarify intent of P1841 numeric traits Matthias Kretz 2022-02-14 2022-02   LEWG Library Evolution
P2552R0 On the ignorability of standard attributes Timur Doumler 2022-02-16 2022-02   EWG Evolution
P2553R0 Make mdspan size_type controllable Christian Trott 2022-02-14 2022-02   LEWG Library Evolution
P2554R0 C-Array Interoperability of MDSpan Christian Trott 2022-02-14 2022-02   LEWG Library Evolution
P2555R0 Naming improvements for std::execution Jens Maurer 2022-02-15 2022-02   LEWG Library Evolution
P2557R0 WG21 2022-02 Virtual Meeting Record of Discussion Nina Ranns 2022-02-17 2022-02   All of WG21

2022-01 Mailing Available

The 2022-01 mailing of new standards papers is now available.

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
P0447R18 Introduction of std::hive to the standard library Matt Bentley 2021-12-21 2022-01 P0447R17 SG14 Low Latency,LEWG Library Evolution,All of WG21
P0792R6 function_ref: a non-owning reference to a Callable Vittorio Romeo 2022-01-16 2022-01 P0792R5 LEWG Library Evolution,LWG Library
P1018R14 C++ Language Evolution status  pandemic edition  2021/09–2022/01 JF Bastien 2022-01-13 2022-01 P1018R13 EWG Evolution,All of WG21
P1083R4 Move resource_adaptor from Library TS to the C++ WP Pablo Halpern 2022-01-01 2022-01 P1083R3 LEWG Library Evolution
P1206R7 Conversions from ranges to containers Corentin Jabot 2022-01-21 2022-01 P1206R6 LWG Library
P1240R2 Scalable Reflection Daveed Vandevoorde 2022-01-14 2022-01 P1240R1 SG7 Reflection
P1664R6 reconstructible_range - a concept for putting ranges back together JeanHeyd Meneide 2021-12-25 2022-01 P1664R5 SG9 Ranges,LEWG Library Evolution
P1841R2 Wording for Individually Specializable Numeric Traits Walter E Brown 2022-01-14 2022-01 P1841R1 LWG Library
P1854R3 Conversion to literal encoding should not lead to loss of meaning Corentin Jabot 2022-01-15 2022-01 P1854R2 EWG Evolution
P1885R9 Naming Text Encodings to Demystify Them Corentin Jabot 2022-01-15 2022-01 P1885R8 LEWG Library Evolution
P1899R2 stride_view Christopher Di Bella, Tim Song 2021-12-23 2022-01 P1899R1 SG9 Ranges,LEWG Library Evolution
P2000R3 Direction for ISO C++ Daveed Vandevoorde 2022-01-06 2022-01 P2000R2 All of WG21,Direction Group
P2079R2 System execution context Lee Howes 2022-01-14 2022-01 P2079R1 SG1 Concurrency and Parallelism,LEWG Library Evolution
P2093R12 Formatted output Victor Zverovich 2021-12-20 2022-01 P2093R11 LWG Library
P2165R3 Compatibility between tuple, pair and tuple-like objects Corentin Jabot 2022-01-18 2022-01 P2165R2 LEWG Library Evolution
P2248R4 Enabling list-initialization for algorithms Giuseppe D'Angelo 2022-01-03 2022-01 P2248R3 SG6 Numerics,SG9 Ranges,LEWG Library Evolution
P2249R4 Mixed comparisons for smart pointers Giuseppe D'Angelo 2022-01-11 2022-01 P2249R3 LEWG Library Evolution
P2286R5 Formatting Ranges Barry Revzin 2022-01-15 2022-01 P2286R4 LEWG Library Evolution
P2286R6 Formatting Ranges Barry Revzin 2022-01-19 2022-01 P2286R5 LEWG Library Evolution
P2300R4 `std::execution` Michał Dominiak 2022-01-19 2022-01 P2300R3 SG1 Concurrency and Parallelism,LEWG Library Evolution
P2302R3 std::ranges::contains Christopher Di Bella 2022-01-19 2022-01 P2302R2 LEWG Library Evolution
P2303R4 Basic lambdas for C Jens Gustedt 2021-12-24 2022-01 P2303R3 SG22 Compatability
P2304R3 Improve type generic programming Jens Gustedt 2021-12-24 2022-01 P2304R2 SG22 Compatability
P2305R4 Type inference for variable definitions and function returns Jens Gustedt 2021-12-24 2022-01 P2305R3 SG22 Compatability
P2306R3 Type-generic lambdas Jens Gustedt 2021-12-24 2022-01 P2306R2 SG22 Compatability
P2310R1 Revise spelling of keywords Jens Gustedt 2021-12-31 2022-01 P2310R0 SG22 Compatability
P2311R2 Make false and true first-class language features Jens Gustedt 2021-12-30 2022-01 P2311R1 SG22 Compatability
P2324R2 Labels at the end of compound statements (C compatibility) Martin Uecker 2022-01-14 2022-01 P2324R1 SG22 Compatability,CWG Core
P2363R3 Extending associative containers with the remaining heterogeneous overloads Konstantin Boyarinov 2022-01-19 2022-01 P2363R2 LEWG Library Evolution
P2370R2 Stacktrace from exception Andrei Nekrashevich 2022-01-11 2022-01 P2370R1 LEWG Library Evolution,LWG Library
P2375R1 Generalisation of nth_element to a range of nths Johan Lundberg 2022-01-14 2022-01 P2375R0 SG9 Ranges,EWG Evolution
P2404R1 Move-only types for equality_comparable_with, totally_ordered_with, and three_way_comparable_with Justin Bassett 2021-12-24 2022-01 P2404R0 SG9 Ranges,LEWGI SG18: LEWG Incubator,LEWG Library Evolution,LWG Library
P2404R2 Move-only types for equality_comparable_with, totally_ordered_with, and three_way_comparable_with Justin Bassett 2022-01-19 2022-01 P2404R1 SG9 Ranges,LEWGI SG18: LEWG Incubator,LEWG Library Evolution,LWG Library
P2424R0 Abbreviated Parameters Mihail Naydenov 2022-01-14 2022-01   EWGI SG17: EWG Incubator
P2437R1 Support for #warning Aaron Ballman 2022-01-13 2022-01 P2437R0 CWG Core
P2447R2 std::span and the missing constructor Federico Kircheis 2022-01-21 2022-01 P2447R1 LEWG Library Evolution
P2448R1 Relaxing some constexpr restrictions Barry Revzin 2022-01-15 2022-01 P2448R0 CWG Core
P2457R0 2021 December Library Evolution Poll Outcomes Bryce Adelstein Lelbach 2022-01-14 2022-01   LEWG Library Evolution
P2458R0 2022 January Library Evolution Polls Bryce Adelstein Lelbach 2022-01-20 2022-01   LEWG Library Evolution
P2468R2 The Equality Operator You Are Looking For Barry Revzin, Bjarne Stroustrup, Cameron DaCamara, Daveed Vandevoorde, Gabriel Dos Reis, Herb Sutter, Jason Merrill, Jonathan Caves, Richard Smith, Ville Voutilainen 2022-01-14 2022-01 P2468R1 EWG Evolution,CWG Core
P2474R1 views::repeat Michał Dominiak 2022-01-18 2022-01 P2474R0 SG9 Ranges,LEWG Library Evolution
P2494R1 Relaxing range adaptors to allow for move only types Michał Dominiak 2022-01-17 2022-01 P2494R0 SG9 Ranges,LEWG Library Evolution
P2498R1 Forward compatibility of text_encoding with additional encoding registries Peter Brett 2022-01-14 2022-01 P2498R0 SG16 Unicode,LEWG Library Evolution
P2507R1 Limit [[assume]] to conditional-expressions Peter Brett 2022-01-04 2022-01 P2507R0 EWG Evolution
P2508R1 Exposing std::basic-format-string Barry Revzin 2022-01-18 2022-01 P2508R0 LEWG Library Evolution
P2511R0 Beyond operator(): NTTP callables in type-erased call wrappers Zhihao Yuan 2022-01-14 2022-01   LEWG Library Evolution
P2512R0 SG16: Unicode meeting summaries 2021-06-09 through 2021-12-15 Tom Honermann 2021-12-23 2022-01   SG16 Unicode
P2513R0 char8_t Compatibility and Portability Fixes JeanHeyd Meneide 2022-01-09 2022-01   SG16 Unicode,EWG Evolution
P2514R0 std::breakpoint René Ferdinand Rivera Morell 2022-01-02 2022-01   SG15 Tooling,LEWG Library Evolution
P2515R0 std::is_debugger_present René Ferdinand Rivera Morell 2022-01-02 2022-01   SG15 Tooling,LEWG Library Evolution
P2516R0 string_view is implicitly convertible from what? Victor Zverovich 2022-01-07 2022-01   LEWG Library Evolution
P2517R0 Add a conditional noexcept specification to std::apply Hewill Kang 2022-01-14 2022-01   LEWG Library Evolution
P2520R0 move_iterator should be a random access iterator Barry Revzin 2022-01-15 2022-01   LEWG Library Evolution
P2521R0 Contract support -- Working Paper Andrzej Krzemieński 2022-01-17 2022-01   SG21 Contracts
P2523R0 Request for re-inclusion of std::hive proposal in C++23 Matt Bentley 2022-01-14 2022-01   SG14 Low Latency,LEWG Library Evolution
P2524R0 SG14: Low Latency/Games/Embedded/Finance/Simulation 2020/12/09-2022/01/12 Michael Wong 2022-01-15 2022-01   SG14 Low Latency
P2525R0 SG19: Machine Learning Meeting Minutes 2020/12/10-2022/01/13 Michael Wong 2022-01-15 2022-01   SG19 Machine Learning
P2527R0 std::variant_alternative_index and std::variant_alternative_index_v Alex Christensen 2022-01-18 2022-01   LEWGI SG18: LEWG Incubator