Standardization

2023-07 Mailing Available

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

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
N4955 WG21 2023-06 Admin telecon minutes Nina Ranns 2023-06-05 2023-07   All of WG21
N4957 WG21 June 2023 Varna Minutes of Meeting Nina Ranns 2023-06-28 2023-07   All of WG21
P0260R6 C++ Concurrent Queues Detlef Vollmann 2023-06-16 2023-07 P0260R5 SG1 Concurrency and Parallelism,LEWG Library Evolution
P0260R7 C++ Concurrent Queues Detlef Vollmann 2023-07-13 2023-07 P0260R6 SG1 Concurrency and Parallelism,LEWG Library Evolution
P0543R3 Saturation arithmetic Jens Maurer 2023-07-19 2023-07 P0543R2 LWG Library
P0843R7 inplace_vector Gonzalo Brito Gadeschi 2023-06-16 2023-07 P0843R6 LEWG Library Evolution
P0843R8 inplace_vector Gonzalo Brito Gadeschi 2023-06-16 2023-07 P0843R7 LEWG Library Evolution
P0901R11 Size feedback in operator new Thomas Köppe 2023-06-20 2023-07 P0901R10 EWG Evolution,CWG Core
P1030R6 std::filesystem::path_view Niall Douglas 2023-06-16 2023-07 P1030R5 LEWG Library Evolution
P1324R1 RE: Yet another approach for constrained declarations Mihail Naydenov 2023-07-06 2023-07 P1324R0 EWG Evolution
P1383R2 More constexpr for cmath and complex Oliver Rosten 2023-06-15 2023-07 P1383R1 SG6 Numerics,LEWG Library Evolution,LWG Library
P1729R2 Text Parsing Elias Kosunen 2023-07-07 2023-07 P1729R1 SG9 Ranges,SG16 Unicode,LEWG Library Evolution
P1928R5 std::simd - Merge data-parallel types from the Parallelism TS 2 Matthias Kretz 2023-06-19 2023-07 P1928R4 LEWG Library Evolution
P1928R6 std::simd - Merge data-parallel types from the Parallelism TS 2 Matthias Kretz 2023-06-19 2023-07 P1928R5 LEWG Library Evolution
P2169R4 A Nice Placeholder With No Name Corentin Jabot 2023-06-16 2023-07 P2169R3 CWG Core
P2407R4 Freestanding Library: Partial Classes Emil Meissner 2023-06-28 2023-07 P2407R3 LWG Library
P2487R1 Is attribute-like syntax adequate for contract annotations? Andrzej Krzemieński 2023-06-11 2023-07 P2487R0 SG21 Contracts
P2521R4 Contract support -- Record of SG21 consensus Andrzej Krzemieński 2023-06-15 2023-07 P2521R3 SG21 Contracts
P2542R3 views::concat Hui Xie 2023-06-09 2023-07 P2542R2 SG9 Ranges,LEWG Library Evolution
P2546R5 Debugging Support René Ferdinand Rivera Morell 2023-07-05 2023-07 P2546R4 LWG Library
P2548R6 copyable_function Michael Florian Hava 2023-06-15 2023-07 P2548R5 LWG Library
P2552R3 On the ignorability of standard attributes Timur Doumler 2023-06-14 2023-07 P2552R2 EWG Evolution,CWG Core
P2591R4 Concatenation of strings and string views Giuseppe D'Angelo 2023-07-11 2023-07 P2591R3 LEWG Library Evolution
P2630R4 Submdspan Christian Trott 2023-06-22 2023-07 P2630R3 LEWG Library Evolution,LWG Library
P2637R3 Member visit Barry Revzin 2023-06-14 2023-07 P2637R2 LEWG Library Evolution
P2641R4 Checking if a union alternative is active Barry Revzin 2023-06-14 2023-07 P2641R3 LEWG Library Evolution
P2642R3 Padded mdspan layouts Mark Hoemmen 2023-07-14 2023-07 P2642R2 LEWG Library Evolution
P2662R2 Pack Indexing Corentin Jabot 2023-07-15 2023-07 P2662R1 EWG Evolution
P2689R2 atomic_accessor Christian Trott 2023-07-20 2023-07 P2689R1 SG1 Concurrency and Parallelism,LEWG Library Evolution
P2697R1 Interfacing bitset with string_view Michael Florian Hava 2023-06-15 2023-07 P2697R0 LWG Library
P2714R1 Bind front and back to NTTP callables Zhihao Yuan 2023-06-16 2023-07 P2714R0 LWG Library
P2717R2 Tool Introspection René Ferdinand Rivera Morell 2023-06-15 2023-07 P2717R1 SG15 Tooling
P2727R3 std::iterator_interface Zach Laine 2023-06-13 2023-07 P2727R2 LEWG Library Evolution
P2728R4 Unicode in the Library, Part 1: UTF Transcoding Zach Laine 2023-06-19 2023-07 P2728R3 SG16 Unicode,LEWG Library Evolution
P2728R5 Unicode in the Library, Part 1: UTF Transcoding Zach Laine 2023-07-11 2023-07 P2728R4 SG16 Unicode,LEWG Library Evolution
P2741R3 user-generated static_assert messages Corentin Jabot 2023-06-16 2023-07 P2741R2 EWG Evolution
P2752R3 Static storage for braced initializers Arthur O'Dwyer 2023-06-14 2023-07 P2752R2 CWG Core
P2757R3 Type checking format args Barry Revzin 2023-06-14 2023-07 P2757R2 LEWG Library Evolution
P2767R1 flat_map/flat_set omnibus Arthur O'Dwyer 2023-07-14 2023-07 P2767R0 LEWG Library Evolution,LWG Library
P2776R0 2023-05 Library Evolution Poll Outcomes Bryce Adelstein Lelbach 2023-06-16 2023-07   LEWG Library Evolution
P2779R1 Make basic_string_view's range construction conditionally explicit Giuseppe D'Angelo 2023-07-11 2023-07 P2779R0 SG9 Ranges,SG16 Unicode,LEWG Library Evolution
P2781R3 std::constexpr_v Zach Laine 2023-06-12 2023-07 P2781R2 LEWG Library Evolution
P2785R0 Relocating prvalues Sébastien Bini, Ed Catmur 2023-06-12 2023-07   EWGI SG17: EWG Incubator,LEWGI SG18: LEWG Incubator,SG23 Safety and Security
P2785R1 Relocating prvalues Sébastien Bini, Ed Catmur 2023-06-12 2023-07 P2785R0 EWGI SG17: EWG Incubator,LEWGI SG18: LEWG Incubator,SG23 Safety and Security
P2785R2 Relocating prvalues Sébastien Bini, Ed Catmur 2023-06-14 2023-07 P2785R1 EWGI SG17: EWG Incubator,LEWGI SG18: LEWG Incubator,SG23 Safety and Security
P2785R3 Relocating prvalues Sébastien Bini, Ed Catmur 2023-06-14 2023-07 P2785R2 EWGI SG17: EWG Incubator
P2786R2 Trivial relocatability options Mungo Gill 2023-06-16 2023-07 P2786R1 EWG Evolution
P2795R0 Correct and incorrect code, and "erroneous behaviour" Thomas Köppe 2023-06-13 2023-07   SG12 Undefined and Unspecified Behavior,SG23 Safety and Security,EWG Evolution,CWG Core
P2795R1 Erroneous behaviour for uninitialized reads Thomas Köppe 2023-06-15 2023-07 P2795R0 SG12 Undefined and Unspecified Behavior,SG23 Safety and Security,EWG Evolution,CWG Core
P2795R2 Erroneous behaviour for uninitialized reads Thomas Köppe 2023-06-16 2023-07 P2795R1 SG12 Undefined and Unspecified Behavior,SG23 Safety and Security,EWG Evolution,CWG Core
P2809R1 Trivial infinite loops are not Undefined Behavior JF Bastien 2023-06-17 2023-07 P2809R0 SG1 Concurrency and Parallelism,SG22 Compatability,EWG Evolution,LEWG Library Evolution
P2810R1 is_debugger_present is_replaceable René Ferdinand Rivera Morell 2023-07-06 2023-07 P2810R0 LEWG Library Evolution
P2811R5 Contract-Violation Handlers Joshua Berne 2023-06-28 2023-07 P2811R4 SG21 Contracts
P2811R6 Contract-Violation Handlers Joshua Berne 2023-06-28 2023-07 P2811R5 SG21 Contracts
P2811R7 Contract-Violation Handlers Joshua Berne 2023-07-13 2023-07 P2811R6 SG21 Contracts
P2814R1 Trivial Relocatability --- Comparing P1144 with P2786 Mungo Gill 2023-06-16 2023-07 P2814R0 EWG Evolution
P2819R1 Add tuple protocol to complex Michael Florian Hava 2023-07-14 2023-07 P2819R0 LEWG Library Evolution,LWG Library
P2821R2 span.at() Jarrad J. Waterloo 2023-05-26 2023-07 P2821R1 SG23 Safety and Security,LEWG Library Evolution
P2821R3 span.at() Jarrad J. Waterloo 2023-06-12 2023-07 P2821R2 SG23 Safety and Security,LEWG Library Evolution
P2828R2 Copy elision for direct-initialization with a conversion function (Core issue 2327) Brian Bi 2023-06-12 2023-07 P2828R1 CWG Core
P2834R1 Semantic Stability Across Contract-Checking Build Modes Joshua Berne, John Lakos 2023-06-08 2023-07 P2834R0 SG21 Contracts
P2835R1 Expose std::atomic_ref's object address Gonzalo Brito Gadeschi 2023-06-26 2023-07 P2835R0 LEWG Library Evolution
P2836R1 std::basic_const_iterator should follow its underlying type's convertibility Christopher Di Bella 2023-07-11 2023-07 P2836R0 SG9 Ranges,LEWG Library Evolution,LWG Library
P2845R1 Formatting of std::filesystem::path Victor Zverovich 2023-06-08 2023-07 P2845R0 SG16 Unicode,LEWG Library Evolution
P2865R1 Remove Deprecated Array Comparisons from C++26 Alisdair Meredith 2023-06-16 2023-07 P2865R0 SG22 Compatability,EWG Evolution
P2872R1 Remove `wstring_convert` From C++26 Alisdair Meredith 2023-06-07 2023-07 P2872R0 LEWG Library Evolution
P2874R1 Mandating Annex D Alisdair Meredith 2023-06-11 2023-07 P2874R0 LWG Library
P2874R2 Mandating Annex D Alisdair Meredith 2023-06-12 2023-07 P2874R1 LWG Library
P2877R0 Contract Build Modes and Semantics Joshua Berne 2023-07-13 2023-07   SG21 Contracts
P2878R2 Reference checking Jarrad J. Waterloo 2023-06-10 2023-07 P2878R1 SG23 Safety and Security
P2878R3 Reference checking Jarrad J. Waterloo 2023-06-23 2023-07 P2878R2 SG23 Safety and Security
P2878R4 Reference checking Jarrad J. Waterloo 2023-07-08 2023-07 P2878R3 SG23 Safety and Security
P2885R0 Requirements for a Contracts syntax Timur Doumler 2023-07-16 2023-07   SG21 Contracts,EWG Evolution
P2898R1 Build System Requirements for Importable Headers Daniel Ruoso 2023-06-12 2023-07 P2898R0 SG15 Tooling
P2902R0 constexpr 'Parallel' Algorithms Oliver Rosten 2023-06-17 2023-07   LEWG Library Evolution,LWG Library
P2904R0 Removing exception in precedence rule(s) when using member pointer syntax Annop Rana 2023-06-13 2023-07   EWGI SG17: EWG Incubator
P2905R0 Runtime format strings Victor Zverovich 2023-07-15 2023-07   LEWG Library Evolution
P2905R1 Runtime format strings Victor Zverovich 2023-07-15 2023-07 P2905R0 LWG Library
P2906R0 Structured bindings for std::extents Bernhard Manfred Gruber 2023-05-29 2023-07   LEWG Library Evolution
P2910R0 C++ Standard Library Ready Issues to be moved in Varna, Jun. 2023 Jonathan Wakely 2023-06-09 2023-07   All of WG21
P2911R0 Python Bindings with Value-Based Reflection Adam Lach 2023-07-10 2023-07   SG7 Reflection
P2912R0 Concurrent queues and sender/receivers Gor Nishanov 2023-07-04 2023-07   SG1 Concurrency and Parallelism
P2915R0 Proposed resolution to CWG1223 Corentin Jabot 2023-06-13 2023-07   CWG Core
P2917R0 An in-line defaulted destructor should keep the copy- and move-operations Andreas Fertig 2023-06-14 2023-07   EWGI SG17: EWG Incubator,EWG Evolution
P2917R1 An in-line defaulted destructor should keep the copy- and move-operations Andreas Fertig 2023-07-05 2023-07 P2917R0 EWG Evolution
P2918R0 Runtime format strings II Victor Zverovich 2023-07-15 2023-07   LEWG Library Evolution
P2918R1 Runtime format strings II Victor Zverovich 2023-07-15 2023-07 P2918R0 LWG Library
P2920R0 Library Evolution Leadership's Understanding of the Noexcept Policy History Nevin Liber 2023-06-16 2023-07   All of WG21
P2921R0 Exploring std::expected based API alternatives for buffer_queue Gor Nishanov 2023-07-04 2023-07   LEWG Library Evolution
P2922R0 Core Language Working Group "ready" Issues for the June, 2023 meeting Jens Maurer 2023-06-16 2023-07   CWG Core
P2925R0 inplace_vector - D0843R7 LEWG presentation David Sankel 2023-06-19 2023-07   LEWG Library Evolution
P2926R0 std::simd types should be regular - P2892R0 LEWG presentation David Sankel 2023-06-19 2023-07   LEWG Library Evolution
P2929R0 simd_invoke Daniel Towner 2023-07-19 2023-07   LEWG Library Evolution
P2930R0 Formatter specializations for the standard library Mark de Wever 2023-07-15 2023-07   LEWG Library Evolution,LWG Library
P2931R0 WG21 June 2023 Varna Meeting Record of Discussion Nina Ranns 2023-06-28 2023-07   All of WG21
P2937R0 Freestanding: Remove strtok Ben Craig 2023-07-02 2023-07   LEWG Library Evolution
P2940R0 switch for Pattern Matching Mihail Naydenov 2023-07-06 2023-07   EWGI SG17: EWG Incubator
P2941R0 Identifiers for Pattern Matching Mihail Naydenov 2023-07-06 2023-07   EWGI SG17: EWG Incubator
P2944R0 Comparisons for reference_wrapper Barry Revzin 2023-07-09 2023-07   LEWG Library Evolution
P2945R0 Additional format specifiers for time_point Barry Revzin 2023-07-13 2023-07   LEWG Library Evolution
P2946R0 A flexible solution to the problems of `noexcept` Pablo Halpern 2023-07-19 2023-07   EWGI SG17: EWG Incubator
P2947R0 Contracts must avoid disclosing sensitive information Andrei Zissu 2023-07-20 2023-07   SG21 Contracts,SG23 Safety and Security
P2949R0 Slides for P2861R0: Narrow Contracts and `noexcept` are Inherently Incompatable John Lakos 2023-07-14 2023-07   EWGI SG17: EWG Incubator,SG21 Contracts,EWG Evolution,LEWG Library Evolution
P2950R0 Slides for P2836R1: std::basic_const_iterator should follow its underlying type's convertibility Tomasz Kamiński 2023-07-11 2023-07   LEWG Library Evolution
P2951R0 Shadowing is good for safety Jarrad J. Waterloo 2023-07-14 2023-07   EWGI SG17: EWG Incubator,LEWGI SG18: LEWG Incubator,SG23 Safety and Security
P2951R1 Shadowing is good for safety Jarrad J. Waterloo 2023-07-16 2023-07 P2951R0 SG23 Safety and Security

2023-05 Mailing Available

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

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
N4946 2024-03 Tokyo meeting information JF Bastien 2023-04-13 2023-05 All of WG21
N4947 INCITS C++/WG21 agenda: 12-17 June 2023, Varna, Bulgaria John Spicer 2023-05-02 2023-05 All of WG21
N4948 Working Draft, C++ Extensions for Library Fundamentals, Version 3 Thomas Köppe 2023-05-08 2023-05 All of WG21
N4949 Editor's Report: C++ Extensions for Library Fundamentals, Version 3 Thomas Köppe 2023-05-08 2023-05 All of WG21
N4950 Working Draft, Standard for Programming Language C++ Thomas Köppe 2023-05-10 2023-05 All of WG21
N4951 Editors' Report - Programming Languages - C++ Thomas Köppe 2023-05-10 2023-05 All of WG21
N4953 Concurrency TS2 Michael Wong 2023-05-15 2023-05 All of WG21
N4954 2023 WG21 admin telecon meetings, rev. 1 Herb Sutter 2023-05-18 2023-05 All of WG21
P0342R2 pessimize_hint Gonzalo Brito Gadeschi 2023-05-16 2023-05 P0342R1 SG1 Concurrency and Parallelism
P0447R22 Introduction of std::hive to the standard library Matt Bentley 2023-05-16 2023-05 P0447R21 SG14 Low Latency,LEWG Library Evolution,All of WG21
P0843R6 static_vector Gonzalo Brito Gadeschi 2023-05-18 2023-05 P0843R5 LEWG Library Evolution
P1000R5 C++ IS schedule Herb Sutter 2023-05-10 2023-05 P1000R4 All of WG21
P1028R5 SG14 status_code and standard error object Niall Douglas 2023-05-11 2023-05 P1028R4 LEWG Library Evolution
P1061R5 Structured Bindings can introduce a Pack Barry Revzin 2023-05-17 2023-05 P1061R4 EWG Evolution
P1068R7 Vector API for random number generation Ilya Burylov 2023-05-17 2023-05 P1068R6 LEWG Library Evolution
P1112R4 Language support for class layout control Pal Balog 2023-05-18 2023-05 P1112R3 EWG Evolution
P1144R8 std::is_trivially_relocatable Arthur O'Dwyer 2023-05-14 2023-05 P1144R7 EWG Evolution,LEWG Library Evolution
P1684R5 mdarray: An Owning Multidimensional Array Analog of mdspan Christian Trott 2023-05-19 2023-05 P1684R4 LEWG Library Evolution
P1759R6 Native handles and file streams Elias Kosunen 2023-05-17 2023-05 P1759R5 LWG Library
P1885R12 Naming Text Encodings to Demystify Them Corentin Jabot 2023-04-05 2023-05 P1885R11 LWG Library
P1901R2 Enabling the Use of weak_ptr as Keys in Unordered Associative Containers Daryl Haresign 2023-04-05 2023-05 P1901R1 LWG Library
P1928R4 std::simd - Merge data-parallel types from the Parallelism TS 2 Matthias Kretz 2023-05-19 2023-05 P1928R3 LEWG Library Evolution
P2019R3 Thread attributes Corentin Jabot 2023-05-18 2023-05 P2019R2 LEWG Library Evolution
P2022R2 Rangified version of lexicographical_compare_three_way Ran Regev 2023-05-10 2023-05 P2022R1 SG9 Ranges,LEWG Library Evolution
P2141R1 Aggregates are named tuples Antony Polukhin 2023-05-03 2023-05 P2141R0 LEWG Library Evolution,LWG Library
P2300R7 `std::execution` Eric Niebler 2023-04-21 2023-05 P2300R6 LEWG Library Evolution,LWG Library
P2447R4 std::span over an initializer list Arthur O'Dwyer 2023-05-14 2023-05 P2447R3 LEWG Library Evolution
P2495R3 Interfacing stringstreams with string_view Michael Hava 2023-04-19 2023-05 P2495R2 LWG Library
P2500R1 C++ parallel algorithms and P2300 Ruslan Arutyunyan 2023-05-17 2023-05 P2500R0 SG1 Concurrency and Parallelism,LEWG Library Evolution
P2546R4 Debugging Support René Ferdinand Rivera Morell 2023-05-20 2023-05 P2546R3 LEWG Library Evolution,LWG Library
P2548R5 copyable_function Michael Florian Hava 2023-04-03 2023-05 P2548R4 LEWG Library Evolution,LWG Library
P2552R2 On the ignorability of standard attributes Timur Doumler 2023-05-19 2023-05 P2552R1 EWG Evolution,CWG Core
P2561R2 A control flow operator Barry Revzin 2023-05-18 2023-05 P2561R1 EWG Evolution
P2621R3 UB? In my Lexer? Corentin Jabot 2023-05-18 2023-05 P2621R2 CWG Core
P2637R2 Member visit Barry Revzin 2023-05-15 2023-05 P2637R1 LEWG Library Evolution
P2641R3 Checking if a union alternative is active Barry Revzin 2023-05-15 2023-05 P2641R2 LEWG Library Evolution
P2643R1 Improving C++ concurrency features Gonzalo Brito Gadeschi 2023-05-18 2023-05 P2643R0 SG1 Concurrency and Parallelism
P2654R0 Modules and Macros Alisdair Meredith 2023-05-19 2023-05 EWG Evolution,LEWG Library Evolution
P2662R1 Pack Indexing Corentin Jabot 2023-05-18 2023-05 P2662R0 EWG Evolution
P2663R2 Proposal to support interleaved complex values in std::simd Daniel Towner 2023-04-28 2023-05 P2663R1 LEWG Library Evolution
P2663R3 Proposal to support interleaved complex values in std::simd Daniel Towner 2023-05-17 2023-05 P2663R2 LEWG Library Evolution
P2664R2 Proposal to extend std::simd with permutation API Daniel Towner 2023-04-28 2023-05 P2664R1 SG1 Concurrency and Parallelism,LEWG Library Evolution
P2664R3 Proposal to extend std::simd with permutation API Daniel Towner 2023-05-17 2023-05 P2664R2 SG1 Concurrency and Parallelism,LEWG Library Evolution
P2685R1 Language Support For Scoped Objects Alisdair Meredith 2023-05-19 2023-05 P2685R0 EWGI SG17: EWG Incubator
P2686R1 constexpr structured bindings and references to constexpr variables Corentin Jabot 2023-05-18 2023-05 P2686R0 EWG Evolution,CWG Core
P2689R2 atomic_accessor Nevin Liber 2023-05-25 2023-05 P2689R1 SG1 Concurrency and Parallelism,LEWG Library Evolution
P2717R1 Tool Introspection René Ferdinand Rivera Morell 2023-05-17 2023-05 P2717R0 SG15 Tooling
P2727R2 std::iterator_interface Zach Laine 2023-05-03 2023-05 P2727R1 LEWG Library Evolution
P2728R1 Unicode in the Library, Part 1: UTF Transcoding Zach Laine 2023-05-04 2023-05 P2728R0 SG16 Unicode,LEWG Library Evolution
P2728R2 Unicode in the Library, Part 1: UTF Transcoding Zach Laine 2023-05-10 2023-05 P2728R1 SG16 Unicode,LEWG Library Evolution
P2728R3 Unicode in the Library, Part 1: UTF Transcoding Zach Laine 2023-05-10 2023-05 P2728R2 SG16 Unicode,LEWG Library Evolution
P2741R2 user-generated static_assert messages Corentin Jabot 2023-05-11 2023-05 P2741R1 EWG Evolution
P2746R2 Deprecate and Replace Fenv Rounding Modes Hans Boehm 2023-05-14 2023-05 P2746R1 SG6 Numerics,LEWG Library Evolution
P2748R1 Disallow Binding a Returned Glvalue to a Temporary Brian Bi 2023-05-15 2023-05 P2748R0 EWG Evolution
P2752R2 Static storage for braced initializers Arthur O'Dwyer 2023-05-14 2023-05 P2752R1 EWG Evolution,CWG Core
P2757R2 Type checking format args Barry Revzin 2023-05-15 2023-05 P2757R1 LEWG Library Evolution
P2767R0 flat_map/flat_set omnibus Arthur O'Dwyer 2023-05-14 2023-05 LWG Library
P2769R1 get_element customization point object Ruslan Arutyunyan 2023-05-17 2023-05 P2769R0 SG9 Ranges,LEWG Library Evolution
P2771R1 Towards memory safety in C++ Thomas Neumann 2023-05-17 2023-05 P2771R0 SG23 Safety and Security
P2774R0 Scoped thread-local storage Michael Florian Hava 2023-05-10 2023-05 SG1 Concurrency and Parallelism
P2775R0 2023-05 Library Evolution Polls Bryce Adelstein Lelbach 2023-05-25 2023-05 LEWG Library Evolution
P2781R1 std::constexpr_v Zach Laine 2023-05-04 2023-05 P2781R0 LEWG Library Evolution
P2781R2 std::constexpr_v Zach Laine 2023-05-21 2023-05 P2781R1 LEWG Library Evolution
P2786R1 Trivial relocatability options Mungo Gill 2023-05-19 2023-05 P2786R0 EWGI SG17: EWG Incubator,EWG Evolution
P2811R2 Contract Violation Handlers Joshua Berne 2023-04-20 2023-05 P2811R1 SG21 Contracts
P2811R3 Contract Violation Handlers Joshua Berne 2023-05-04 2023-05 P2811R2 SG21 Contracts
P2811R4 Contract Violation Handlers Joshua Berne 2023-05-15 2023-05 P2811R3 SG21 Contracts
P2814R0 Trivial Relocatability --- Comparing P1144 with P2786 Mungo Gill 2023-05-19 2023-05 EWGI SG17: EWG Incubator,LEWGI SG18: LEWG Incubator
P2821R1 span.at() Jarrad J. Waterloo 2023-04-13 2023-05 P2821R0 SG23 Safety and Security,LEWG Library Evolution
P2828R1 Copy elision for direct-initialization with a conversion function (Core issue 2327) Brian Bi 2023-05-11 2023-05 P2828R0 CWG Core
P2829R0 Proposal of Contracts Supporting Const-On-Definition Style Andrew Tomazos 2023-04-12 2023-05 SG21 Contracts
P2831R0 Functions having a narrow contract should not be noexcept Timur Doumler 2023-05-15 2023-05 LEWG Library Evolution
P2834R0 Semantic Stability Across Contract-Checking Build Modes Joshua Berne, John Lakos 2023-05-15 2023-05 SG21 Contracts
P2835R0 Expose std::atomic_ref's object address Gonzalo Brito Gadeschi 2023-05-18 2023-05 SG1 Concurrency and Parallelism
P2837R0 Planning to Revisit the Lakos Rule Alisdair Meredith 2023-05-19 2023-05 LEWG Library Evolution
P2839R0 Nontrivial relocation via a new "owning reference" type Brian Bi 2023-05-15 2023-05 EWGI SG17: EWG Incubator
P2841R0 Concept Template Parameters Corentin Jabot 2023-05-18 2023-05 EWG Evolution
P2842R0 Destructor Semantics Do Not Affect Constructible Traits Alisdair Meredith 2023-05-19 2023-05 LWG Library
P2843R0 Preprocessing is never undefined Alisdair Meredith 2023-05-19 2023-05 SG16 Unicode
P2845R0 Formatting of std::filesystem::path Victor Zverovich 2023-05-07 2023-05 SG16 Unicode,LEWG Library Evolution
P2846R0 size_hint: Eagerly reserving memory for not-quite-sized lazy ranges Corentin Jabot 2023-05-11 2023-05 SG9 Ranges
P2848R0 std::is_uniqued Arthur O'Dwyer 2023-04-24 2023-05 LEWGI SG18: LEWG Incubator
P2850R0 Minimal Compiler Preserved Dependencies Mark Batty 2023-05-15 2023-05 SG1 Concurrency and Parallelism
P2852R0 Contract violation handling semantics for the contracts MVP Tom Honermann 2023-04-24 2023-05 SG21 Contracts
P2853R0 Proposal of std::contract_violation Andrew Tomazos 2023-05-10 2023-05 SG21 Contracts
P2855R0 Member customization points for Senders and Receivers Ville Voutilainen 2023-05-18 2023-05 LEWG Library Evolution
P2857R0 P2596R0 Critique Matt Bentley 2023-04-28 2023-05 All of WG21
P2858R0 Noexcept vs contract violations Andrzej Krzemieński 2023-05-12 2023-05 SG21 Contracts
P2861R0 The Lakos Rule: Narrow Contracts And `noexcept` Are Inherently Incompatible John Lakos 2023-05-18 2023-05 SG21 Contracts,EWG Evolution,LEWG Library Evolution
P2862R0 text_encoding::name() should never return null values Daniel Krügler 2023-05-09 2023-05 LEWG Library Evolution,LWG Library
P2863R0 Review Annex D for C++26 Alisdair Meredith 2023-05-19 2023-05 EWG Evolution,LEWG Library Evolution
P2864R0 Remove Deprecated Arithmetic Conversion on Enumerations From C++26 Alisdair Meredith 2023-05-19 2023-05 EWG Evolution
P2865R0 Remove Deprecated Array Comparisons from C++26 Alisdair Meredith 2023-05-19 2023-05 EWG Evolution
P2866R0 Remove Deprecated Volatile Features From C++26 Alisdair Meredith 2023-05-19 2023-05 EWG Evolution
P2867R0 Remove Deprecated strstreams From C++26 Alisdair Meredith 2023-05-19 2023-05 LEWG Library Evolution
P2868R0 Remove Deprecated `std::allocator` Typedef From C++26 Alisdair Meredith 2023-05-19 2023-05 LEWG Library Evolution
P2869R0 Remove Deprecated `shared_ptr` Atomic Access APIs From C++26 Alisdair Meredith 2023-05-19 2023-05 SG1 Concurrency and Parallelism
P2870R0 Remove `basic_string::reserve()` From C++26 Alisdair Meredith 2023-05-19 2023-05 LEWG Library Evolution
P2871R0 Remove Deprecated Unicode Conversion Facets From C++26 Alisdair Meredith 2023-05-19 2023-05 SG16 Unicode
P2872R0 Remove `wstring_convert` From C++26 Alisdair Meredith 2023-05-19 2023-05 LEWG Library Evolution
P2873R0 Remove Deprecated locale category facets for Unicode from C++26 Alisdair Meredith 2023-05-19 2023-05 SG16 Unicode
P2874R0 Mandating Annex D Alisdair Meredith 2023-05-19 2023-05 LWG Library
P2875R0 Undeprecate `polymorphic_allocator::destroy` For C++26 Alisdair Meredith 2023-05-19 2023-05 LEWG Library Evolution
P2876R0 Proposal to extend std::simd with more constructors and accessors Daniel Towner 2023-05-18 2023-05 LEWG Library Evolution
P2878R0 Reference checking Jarrad J. Waterloo 2023-05-10 2023-05 SG23 Safety and Security
P2878R1 Reference checking Jarrad J. Waterloo 2023-05-18 2023-05 P2878R0 SG23 Safety and Security
P2880R0 Algorithm-like vs std::simd based RNG API Ilya Burylov 2023-05-18 2023-05 LEWG Library Evolution
P2881R0 Generator-based for loop Jonathan Müller 2023-05-18 2023-05 EWGI SG17: EWG Incubator,EWG Evolution
P2882R0 An Event Model for C++ Executors Detlef Vollmann 2023-05-11 2023-05 SG1 Concurrency and Parallelism
P2883R0 `offsetof` Should Be A Keyword In C++26 Alisdair Meredith 2023-05-19 2023-05 EWGI SG17: EWG Incubator
P2884R0 `assert` Should Be A Keyword In C++26 Alisdair Meredith 2023-05-19 2023-05 EWGI SG17: EWG Incubator,SG21 Contracts,SG22 Compatability
P2886R0 Concurrency TS2 Editor's report Michael Wong 2023-05-15 2023-05 All of WG21
P2887R0 SG14: Low Latency/Games/Embedded/Finance/Simulation virtual meeting minutes to 2023/05/11 Michael Wong 2023-05-15 2023-05 SG14 Low Latency
P2888R0 SG19: Machine Learning Virtual Meeting Minutes to 2023/05/12 Michael Wong 2023-05-15 2023-05 SG19 Machine Learning
P2889R0 Distributed Arrays Lauri Vasama 2023-05-15 2023-05 EWGI SG17: EWG Incubator,EWG Evolution
P2891R0 SG16: Unicode meeting summaries 2023-01-11 through 2023-05-10 Tom Honermann 2023-05-16 2023-05 SG16 Unicode
P2892R0 std::simd Types Should be Regular David Sankel 2023-05-18 2023-05 LEWG Library Evolution
P2893R0 Variadic Friends Jody Hagins 2023-05-19 2023-05 EWGI SG17: EWG Incubator
P2895R0 noncopyable and nonmoveable utility classes Sebastian Theophil 2023-05-17 2023-05 LEWG Library Evolution
P2897R0 aligned_accessor: An mdspan accessor expressing pointer overalignment Mark Hoemmen 2023-05-18 2023-05 LEWGI SG18: LEWG Incubator
P2898R0 Importable Headers are Not Universally Implementable Daniel Ruoso 2023-05-18 2023-05 SG15 Tooling
P2901R0 Extending linear algebra support to batched operations Mark Hoemmen 2023-05-19 2023-05 SG6 Numerics,LEWGI SG18: LEWG Incubator,SG19 Machine Learning

2023-04 Mailing Available

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

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
N4943 WG21 February 2023 Issaquah Minutes of Meeting Nina Ranns 2023-03-06 2023-04   All of WG21
N4944 Working Draft, Standard for Programming Language C++ Thomas Köppe 2023-03-22 2023-04   All of WG21
N4945 Editors' Report - Programming Languages - C++ Thomas Köppe 2023-03-23 2023-04   All of WG21
P0876R13 fiber_context - fibers without scheduler Oliver Kowalke 2023-03-02 2023-04 P0876R12 LEWG Library Evolution
P1144R7 std::is_trivially_relocatable Arthur O'Dwyer 2023-03-10 2023-04 P1144R6 EWGI SG17: EWG Incubator,LEWGI SG18: LEWG Incubator,EWG Evolution,LEWG Library Evolution
P1673R12 A free function linear algebra interface based on the BLAS Mark Hoemmen 2023-03-14 2023-04 P1673R11 LWG Library
P1885R11 Naming Text Encodings to Demystify Them Corentin Jabot 2023-03-22 2023-04 P1885R10 LWG Library
P2022R1 Rangified version of lexicographical_compare_three_way Ran Regev 2023-03-11 2023-04 P2022R0 SG9 Ranges,LEWG Library Evolution
P2287R2 Designated-initializers for base classes Barry Revzin 2023-03-12 2023-04 P2287R1 EWG Evolution
P2407R3 Freestanding Library: Partial Classes Emil Meissner 2023-03-05 2023-04 P2407R2 LWG Library
P2447R3 std::span over an initializer list Arthur O'Dwyer 2023-03-14 2023-04 P2447R2 LEWG Library Evolution
P2530R3 Hazard Pointers for C++26 Maged Michael 2023-03-02 2023-04 P2530R2 LWG Library
P2545R4 Read-Copy Update (RCU) Paul E. McKenney 2023-03-08 2023-04 P2545R3 LWG Library
P2630R3 Submdspan Christian Trott 2023-03-15 2023-04 P2630R2 LEWG Library Evolution,LWG Library
P2690R1 Presentation for C++17 parallel algorithms and P2300 Ruslan Arutyunyan 2023-03-16 2023-04 P2690R0 SG1 Concurrency and Parallelism,LEWG Library Evolution
P2746R1 Deprecate and Replace Fenv Rounding Modes Hans Boehm 2023-03-14 2023-04 P2746R0 SG6 Numerics,LEWG Library Evolution
P2752R1 Static storage for braced initializers Arthur O'Dwyer 2023-03-10 2023-04 P2752R0 EWG Evolution,CWG Core
P2757R1 Type checking format args Barry Revzin 2023-03-13 2023-04 P2757R0 LEWG Library Evolution
P2780R0 Caller-side precondition checking, and Eval_and_throw Ville Voutilainen 2023-03-02 2023-04   SG21 Contracts
P2806R1 do expressions Barry Revzin 2023-03-12 2023-04 P2806R0 EWG Evolution
P2809R0 Trivial infinite loops are not Undefined Behavior JF Bastien 2023-03-14 2023-04   SG1 Concurrency and Parallelism,SG22 Compatability,EWG Evolution
P2811R0 Contract Violation Handlers Joshua Berne 2023-03-20 2023-04   SG21 Contracts
P2811R1 Contract Violation Handlers Joshua Berne 2023-03-20 2023-04 P2811R0 SG21 Contracts
P2817R0 The idea behind the contracts MVP Andrzej Krzemieński 2023-03-05 2023-04   SG21 Contracts
P2818R0 Uniform Call Syntax for explicit-object member functions Gašper Ažman 2023-03-15 2023-04   EWG Evolution
P2819R0 Add tuple protocol to complex Michael Florian Hava 2023-02-23 2023-04   SG6 Numerics,LEWG Library Evolution
P2824R0 WG21 February 2023 Issaquah meeting Record of Discussion Nina Ranns 2023-03-06 2023-04   All of WG21
P2825R0 calltarget(unevaluated-call-expression) Gašper Ažman 2023-03-15 2023-04   EWG Evolution
P2826R0 Replacement functions Gašper Ažman 2023-03-15 2023-04   EWG Evolution
P2827R0 Floating-point overflow and underflow in from_chars (LWG 3081) Zhihao Yuan 2023-03-14 2023-04   LEWG Library Evolution,LWG Library
P2828R0 Copy elision for direct-initialization with a conversion function (Core issue 2327) Brian Bi 2023-03-13 2023-04   CWG Core
P2830R0 constexpr type comparison Gašper Ažman 2023-03-15 2023-04   EWG Evolution
P2833R0 Freestanding Library: inout expected span Ben Craig 2023-03-13 2023-04   LEWG Library Evolution
P2836R0 std::const_iterator often produces an unexpected type Christopher Di Bella 2023-03-20 2023-04   SG9 Ranges,LEWG Library Evolution,LWG Library
P2838R0 Unconditional contract violation handling of any kind is a serious problem Ville Voutilainen 2023-03-22 2023-04   SG21 Contracts

2023-02 Mailing Available

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

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
N4940 WG21 2022-11 Kona Minutes of Meeting V2 Nina Ranns 2023-01-23 2023-02   All of WG21
N4941 INCITS C++/WG21 Agenda: 6-11 February 2023, Issaquah, WA USA John Spicer 2023-01-21 2023-02   All of WG21
N4942 WG21 2023-01 Admin telecon minutes Nina Ranns 2023-02-02 2023-02   All of WG21
P0290R3 apply() for synchronized_value Anthony Williams 2023-01-17 2023-02 P0290R2 LWG Library
P0290R4 apply() for synchronized_value Anthony Williams 2023-02-16 2023-02 P0290R3 LWG Library
P0447R21 Introduction of std::hive to the standard library Matt Bentley 2023-02-11 2023-02 P0447R20 SG14 Low Latency,LEWG Library Evolution,All of WG21
P0493R4 Atomic maximum/minimum Al Grant 2023-02-15 2023-02 P0493R3 SG1 Concurrency and Parallelism,LWG Library
P0792R13 function_ref: a non-owning reference to a Callable Vittorio Romeo 2023-02-09 2023-02 P0792R12 LWG Library
P0792R14 function_ref: a non-owning reference to a Callable Vittorio Romeo 2023-02-09 2023-02 P0792R13 LWG Library
P0870R5 A proposal for a type trait to detect narrowing conversions Giuseppe D'Angelo 2023-02-15 2023-02 P0870R4 SG6 Numerics,LEWG Library Evolution,LWG Library
P0876R12 fiber_context - fibers without scheduler Oliver Kowalke 2023-02-09 2023-02 P0876R11 LEWG Library Evolution
P1061R4 Structured Bindings can introduce a Pack Barry Revzin 2023-02-15 2023-02 P1061R3 EWG Evolution
P1708R7 Basic Statistics Richard Dosselmann 2023-02-06 2023-02 P1708R6 SG6 Numerics,SG14 Low Latency,LEWG Library Evolution,LWG Library
P1715R1 Loosen restrictions on "_t" typedefs and "_v" values. Jorg Brown 2023-02-06 2023-02 P1715R0 LEWG Library Evolution,CWG Core,LWG Library
P1759R5 Native handles and file streams Elias Kosunen 2023-02-12 2023-02 P1759R4 LWG Library
P1854R4 Making non-encodable string literals ill-formed Corentin Jabot 2023-02-08 2023-02 P1854R3 EWG Evolution
P1928R3 Merge data-parallel types from the Parallelism TS 2 Matthias Kretz 2023-02-03 2023-02 P1928R2 LEWG Library Evolution
P2022R0 Rangified version of lexicographical_compare_three_way Ran Regev 2023-02-06 2023-02   SG9 Ranges,LEWG Library Evolution
P2047R6 An allocator-aware optional type Nina Ranns 2023-02-02 2023-02 P2047R5 LEWG Library Evolution
P2159R1 A Big Decimal Type Bill Seymour 2023-02-06 2023-02 P2159R0 SG6 Numerics
P2300R6 `std::execution` Michał Dominiak 2023-01-19 2023-02 P2300R5 SG1 Concurrency and Parallelism,LEWG Library Evolution
P2308R0 Template parameter initialization S. Davis Herring 2023-02-13 2023-02   CWG Core
P2338R4 Freestanding Library: Character primitives and the C library Ben Craig 2023-02-09 2023-02 P2338R3 LWG Library
P2355R1 Postfix fold expressions S. Davis Herring 2023-02-13 2023-02 P2355R0 EWG Evolution
P2361R6 Unevaluated strings Corentin Jabot 2023-02-12 2023-02 P2361R5 EWG Evolution
P2363R5 Extending associative containers with the remaining heterogeneous overloads Konstantin Boyarinov 2023-02-10 2023-02 P2363R4 LWG Library
P2406R3 Add lazy_counted_iterator Yehezkel Bernat 2023-02-06 2023-02 P2406R2 SG9 Ranges,LEWG Library Evolution
P2406R4 Add lazy_counted_iterator Yehezkel Bernat 2023-02-07 2023-02 P2406R3 SG9 Ranges,LEWG Library Evolution
P2406R5 Add lazy_counted_iterator Yehezkel Bernat 2023-02-08 2023-02 P2406R4 SG9 Ranges,LEWG Library Evolution
P2495R2 Interfacing stringstreams with string_view Michael Hava 2023-02-14 2023-02 P2495R1 LWG Library
P2497R0 Testing for success or failure of charconv functions Jonathan Wakely 2023-01-25 2023-02   LEWG Library Evolution
P2521R3 Contract support -- Record of SG21 consensus Andrzej Krzemieński 2023-02-10 2023-02 P2521R2 SG21 Contracts
P2527R2 std::variant_alternative_index and std::tuple_element_index Alex Christensen 2023-01-27 2023-02 P2527R1 LWG Library
P2545R3 Why RCU Should be in C++26 Paul E. McKenney 2023-02-15 2023-02 P2545R2 LWG Library
P2558R2 Add @, $, and ` to the basic character set Steve Downey 2023-02-08 2023-02 P2558R1 SG16 Unicode,SG22 Compatability
P2572R1 std::format() fill character allowances Tom Honermann 2023-02-08 2023-02 P2572R0 LWG Library
P2588R3 Relax std::barrier phase completion step guarantees Gonzalo Brito 2023-02-07 2023-02 P2588R2 LWG Library
P2591R3 Concatenation of strings and string views Giuseppe D'Angelo 2023-01-30 2023-02 P2591R2 LEWG Library Evolution
P2592R3 Hashing support for std::chrono value classes Giuseppe D'Angelo 2023-02-10 2023-02 P2592R2 LEWG Library Evolution,LWG Library
P2593R1 Allowing static_assert(false) Barry Revzin 2023-01-19 2023-02 P2593R0 EWG Evolution
P2594R1 Slides: Allow programmer to control coroutine elision (P2477R3 Presentation)) Chuanqi Xu 2023-02-07 2023-02 P2594R0 EWG Evolution
P2609R2 Relaxing Ranges Just A Smidge John Eivind Helset 2023-01-22 2023-02 P2609R1 LWG Library
P2609R3 Relaxing Ranges Just A Smidge John Eivind Helset 2023-02-10 2023-02 P2609R2 LWG Library
P2616R4 Making std::atomic notification/wait operations usable in more situations Lewis Baker 2023-02-15 2023-02 P2616R3 LEWG Library Evolution
P2621R2 UB? In my Lexer? Corentin Jabot 2023-02-08 2023-02 P2621R1 SG22 Compatability,EWG Evolution
P2641R2 Checking if a union alternative is active Barry Revzin 2023-02-07 2023-02 P2641R1 LEWG Library Evolution
P2652R2 Disallow user specialization of allocator_traits Pablo Halpern 2023-02-08 2023-02 P2652R1 LWG Library
P2655R2 common_reference_t of reference_wrapper Should Be a Reference Type Hui Xie 2023-02-06 2023-02 P2655R1 SG9 Ranges,LEWG Library Evolution
P2655R3 common_reference_t of reference_wrapper Should Be a Reference Type Hui Xie 2023-02-07 2023-02 P2655R2 SG9 Ranges,LEWG Library Evolution
P2656R2 C++ Ecosystem International Standard René Ferdinand Rivera Morell 2023-02-14 2023-02 P2656R1 SG15 Tooling
P2663R1 Proposal to support interleaved complex values in std::simd Daniel Towner 2023-01-25 2023-02 P2663R0 SG1 Concurrency and Parallelism,LEWG Library Evolution
P2664R1 Proposal to extend std::simd with permutation API Daniel Towner 2023-01-25 2023-02 P2664R0 SG1 Concurrency and Parallelism,LEWG Library Evolution
P2670R1 Non-transient constexpr allocation Barry Revzin 2023-02-03 2023-02 P2670R0 EWG Evolution
P2679R2 Fixing std::start_lifetime_as and std::start_lifetime_as_array Timur Doumler 2023-02-14 2023-02 P2679R1 CWG Core,LWG Library
P2681R1 More Basic Statistics Richard Dosselmann 2023-02-06 2023-02 P2681R0 SG6 Numerics,SG19 Machine Learning
P2693R1 Formatting thread::id and stacktrace Corentin Jabot 2023-02-09 2023-02 P2693R0 LEWG Library Evolution
P2695R1 A proposed plan for contracts in C++ Timur Doumler 2023-02-09 2023-02 P2695R0 SG21 Contracts,EWG Evolution
P2724R1 constant dangling Jarrad J. Waterloo 2023-02-13 2023-02 P2724R0 SG22 Compatability,SG23 Safety and Security
P2727R1 std::iterator_interface Zach Laine 2023-02-01 2023-02 P2727R0 LEWG Library Evolution
P2730R1 variable scope Jarrad J. Waterloo 2023-02-14 2023-02 P2730R0 SG22 Compatability,SG23 Safety and Security
P2733R1 Fix handling of empty specifiers in std::format Victor Zverovich 2023-02-06 2023-02 P2733R0 LEWG Library Evolution
P2733R2 Fix handling of empty specifiers in std::format Victor Zverovich 2023-02-09 2023-02 P2733R1 LEWG Library Evolution
P2733R3 Fix handling of empty specifiers in std::format Victor Zverovich 2023-02-10 2023-02 P2733R2 LEWG Library Evolution,LWG Library
P2736R2 Referencing the Unicode Standard Corentin Jabot 2023-02-09 2023-02 P2736R1 CWG Core
P2738R1 constexpr cast from void*: towards constexpr type-erasure Corentin Jabot 2023-02-13 2023-02 P2738R0 EWG Evolution
P2740R1 Simpler implicit dangling resolution Jarrad J. Waterloo 2023-01-15 2023-02 P2740R0 EWG Evolution
P2740R2 Simpler implicit dangling resolution Jarrad J. Waterloo 2023-02-13 2023-02 P2740R1 SG23 Safety and Security
P2741R1 user-generated static_assert messages Corentin Jabot 2023-02-12 2023-02 P2741R0 EWG Evolution
P2742R1 indirect dangling identification Jarrad J. Waterloo 2023-01-15 2023-02 P2742R0 EWG Evolution
P2742R2 indirect dangling identification Jarrad J. Waterloo 2023-02-13 2023-02 P2742R1 SG23 Safety and Security
P2749R0 Down with "character" Corentin Jabot 2023-02-12 2023-02   SG16 Unicode,CWG Core
P2750R1 C Dangling Reduction Jarrad J. Waterloo 2023-01-15 2023-02 P2750R0 EWG Evolution
P2750R2 C Dangling Reduction Jarrad J. Waterloo 2023-02-13 2023-02 P2750R1 SG22 Compatability,SG23 Safety and Security
P2751R1 Evaluation of Checked Contracts Joshua Berne 2023-02-14 2023-02 P2751R0 SG21 Contracts
P2754R0 Deconstructing Avoiding Uninitialized Reads of Auto Variables Jake Fevold 2023-01-24 2023-02   SG23 Safety and Security,EWG Evolution
P2759R1 DG Opinion on Safety for ISO C++ Michael Wong 2023-01-22 2023-02 P2759R0 SG23 Safety and Security,All of WG21
P2763R1 `layout_stride` static extents default constructor fix Christian Trott 2023-02-07 2023-02 P2763R0 All of WG21
P2770R0 Stashing stashing iterators for proper flattening Tim Song 2023-01-31 2023-02   LWG Library
P2771R0 Towards memory safety in C++ Thomas Neumann 2023-01-17 2023-02   EWGI SG17: EWG Incubator
P2772R0 std::integral_constant literals do not suffice - constexpr_t? Matthias Kretz 2023-01-17 2023-02   LEWGI SG18: LEWG Incubator,LEWG Library Evolution
P2773R0 Considerations for Unicode algorithms Corentin Jabot 2023-02-16 2023-02   SG16 Unicode
P2779R0 Make basic_string_view's range construction conditionally explicit Giuseppe D'Angelo 2023-02-02 2023-02   SG9 Ranges,SG16 Unicode,LEWGI SG18: LEWG Incubator,LEWG Library Evolution
P2782R0 A proposal for a type trait to detect if value initialization can be achieved by zero-filling Giuseppe D'Angelo 2023-02-13 2023-02   SG14 Low Latency,EWG Evolution,LEWG Library Evolution
P2784R0 Not halting the program after detected contract violation Andrzej Krzemieński 2023-02-09 2023-02   SG21 Contracts
P2786R0 Trivial relocatability options Mungo Gill 2023-02-10 2023-02   EWGI SG17: EWG Incubator,LEWGI SG18: LEWG Incubator
P2787R0 pmr::generator - Promise Types are not Values Steve Downey 2023-02-06 2023-02   LEWG Library Evolution,LWG Library
P2787R1 pmr::generator - Promise Types are not Values Steve Downey 2023-02-08 2023-02 P2787R0 LWG Library
P2788R0 Linkage for modular constants S. Davis Herring 2023-02-11 2023-02   EWG Evolution,CWG Core
P2789R0 C++ Standard Library Ready Issues to be moved in Issaquah, Feb. 2023 Jonathan Wakely 2023-02-13 2023-02   All of WG21
P2790R0 C++ Standard Library Immediate Issues to be moved in Issaquah, Feb. 2023 Jonathan Wakely 2023-02-13 2023-02   All of WG21
P2791R0 mandate concepts for new features Ran Regev 2023-02-07 2023-02   LEWG Library Evolution,LWG Library,Direction Group
P2796R0 Core Language Working Group "ready" Issues for the February, 2023 meeting Jens Maurer 2023-02-11 2023-02   CWG Core
P2797R0 Proposed resolution for CWG2692 Static and explicit object member functions with the same par Gašper Ažman 2023-02-10 2023-02   EWG Evolution,CWG Core
P2798R0 Fix layout mappings all static extent default constructor Christian Trott 2023-02-09 2023-02   LWG Library
P2799R0 Closed ranges may be a problem; breaking counted_iterator is not the solution Tim Song 2023-02-13 2023-02   SG9 Ranges,LEWG Library Evolution
P2802R0 Presentation of P1385R7 to LEWG at Issaquah 2023 Guy Davidson 2023-02-09 2023-02   LEWG Library Evolution
P2803R0 std::simd Intro slides Matthias Kretz 2023-02-09 2023-02   LEWG Library Evolution
P2805R0 fiber_context: fibers without scheduler - LEWG slides Nat Goodspeed 2023-02-09 2023-02   LEWG Library Evolution
P2806R0 do expressions Barry Revzin 2023-02-14 2023-02   EWG Evolution
P2807R0 Issaquah Slides for Intel response to std::simd Daniel Towner 2023-02-10 2023-02   SG1 Concurrency and Parallelism,LEWG Library Evolution
P2808R0 Internal linkage in the global module S. Davis Herring 2023-02-13 2023-02   EWG Evolution,CWG Core
P2810R0 is_debugger_present is_replaceable René Ferdinand Rivera Morell 2023-02-14 2023-02   SG15 Tooling
P2812R0 P1673R11 LEWG presentation Mark Hoemmen 2023-02-13 2023-02   LEWG Library Evolution
P2815R0 Slides for presentation on P2188R1 Anthony Williams 2023-02-16 2023-02   EWG Evolution
P2816R0 Safety Profiles: Type-and-resource Safe programming in ISO Standard C++ Bjarne Stroustrup 2023-02-16 2023-02   All of WG21

C++23 “Pandemic Edition” is complete -- Herb Sutter

image.pngC++23 is done!

C++23 "Pandemic Edition" is complete (Trip report: Winter ISO C++ standards meeting, Issaquah, WA, USA)

by Herb Sutter

From the article:

On Saturday, the ISO C++ committee completed technical work on C++23 in Issaquah, WA, USA! We resolved the remaining international comments on the C++23 draft, and are now producing the final document to be sent out for its international approval ballot (Draft International Standard, or DIS) and final editorial work, to be published later in 2023...

... Per our published C++23 schedule, this was our final meeting to finish technical work on C++23. No features were added or removed, we just handled fit-and-finish issues and primarily focused on finishing addressing the 137 national body comments we received in the summer’s international comment ballot (Committee Draft, or CD). You can find a list of C++23 features here, many of them already implemented in major compilers and libraries. C++23’s main theme was “completing C++20,” and some of the highlights include module “std”, “if consteval,” explicit “this” parameters, still more constexpr, still more CTAD, “[[assume]]”, simplifying implicit move, multidimensional and static “operator[]”, a bunch of Unicode improvements, and Nicolai Josuttis’ personal favorite: fixing the lifetime of temporaries in range-for loops...

2022-12 Mailing Available

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

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
P0901R10 Size feedback in operator new Chris Kennelly 2022-11-09 2022-12 P0901R9 EWG Evolution
P1018R18 C++ Language Evolution status  pandemic edition  2022/07–2022/11 JF Bastien 2022-11-11 2022-12 P1018R17 EWG Evolution,All of WG21
P1018R19 C++ Language Evolution status JF Bastien 2022-11-15 2022-12 P1018R18 EWG Evolution,All of WG21
P1028R4 SG14 status_code and standard error object Niall Douglas 2022-10-28 2022-12 P1028R3 LEWG Library Evolution
P1202R5 Asymmetric Fences David Goldblatt 2022-11-11 2022-12 P1202R4 LWG Library
P1264R2 Revising the wording of stream input operations Louis Dionne 2022-12-04 2022-12 P1264R1 LWG Library
P1478R8 Byte-wise atomic memcpy Hans Boehm 2022-11-14 2022-12 P1478R7 All of WG21
P1619R2 Functions for Testing Boundary Conditions on Integer Operations Lisa Lippincott 2022-11-08 2022-12 P1619R1 LEWG Library Evolution
P2164R8 views::enumerate Corentin Jabot 2022-11-11 2022-12 P2164R7 LWG Library
P2167R3 Improved Proposed Wording for LWG 2114 (contextually convertible to bool) Daniel Krügler 2022-11-02 2022-12 P2167R2 LWG Library
P2248R7 Enabling list-initialization for algorithms Giuseppe D'Angelo 2022-11-13 2022-12 P2248R6 SG6 Numerics,SG9 Ranges,LEWG Library Evolution
P2396R1 Concurrency TS 2 fixes David Goldblatt 2022-11-10 2022-12 P2396R0 LWG Library
P2434R0 Nondeterministic pointer provenance S. Davis Herring 2022-11-16 2022-12   SG22 Compatability,EWG Evolution
P2539R4 Should the output of std::print to a terminal be synchronized with the underlying stream? Victor Zverovich 2022-11-08 2022-12 P2539R3 LWG Library
P2546R3 Debugging Support René Ferdinand Rivera Morell 2022-11-15 2022-12 P2546R2 LEWG Library Evolution
P2548R2 copyable_function Michael Florian Hava 2022-11-08 2022-12 P2548R1 LEWG Library Evolution
P2548R3 copyable_function Michael Florian Hava 2022-11-11 2022-12 P2548R2 LEWG Library Evolution
P2548R4 copyable_function Michael Florian Hava 2022-11-12 2022-12 P2548R3 LEWG Library Evolution,LWG Library
P2552R1 On the ignorability of standard attributes Timur Doumler 2022-11-15 2022-12 P2552R0 EWG Evolution,CWG Core
P2559R1 Plan for Concurrency Technical Specification Version 2 Bryce Adelstein Lelbach 2022-11-16 2022-12 P2559R0 LEWG Library Evolution,LWG Library
P2564R1 consteval needs to propagate up Hal Finkel 2022-11-10 2022-12 P2564R0 EWG Evolution
P2564R2 consteval needs to propagate up Hal Finkel 2022-11-10 2022-12 P2564R1 EWG Evolution
P2564R3 consteval needs to propagate up Barry Revzin 2022-12-04 2022-12 P2564R2 CWG Core
P2570R1 Contract predicates that are not predicates Andrzej Krzemieński 2022-11-14 2022-12 P2570R0 SG21 Contracts
P2588R2 Relax std::barrier phase completion step guarantees Gonzalo Brito 2022-11-07 2022-12 P2588R1 LEWG Library Evolution
P2589R1 static operator[] Nevin Liber 2022-11-10 2022-12 P2589R0 CWG Core
P2602R2 Poison Pills are Too Toxic Barry Revzin 2022-11-07 2022-12 P2602R1 LEWG Library Evolution
P2614R2 Deprecate numeric_limits::has_denorm Matthias Kretz 2022-11-08 2022-12 P2614R1 LWG Library
P2615R1 Meaningful exports S. Davis Herring 2022-11-15 2022-12 P2615R0 EWG Evolution,CWG Core
P2616R1 Making std::atomic notification/wait operations usable in more situations Lewis Baker 2022-11-09 2022-12 P2616R0 SG1 Concurrency and Parallelism
P2616R2 Making std::atomic notification/wait operations usable in more situations Lewis Baker 2022-11-15 2022-12 P2616R1 SG1 Concurrency and Parallelism
P2640R2 Modules: Inner-scope Namespace Entities: Exported or Not? Nathan Sidwell 2022-11-15 2022-12 P2640R1 EWG Evolution
P2644R1 Final Fix of Broken Range based for Loop Rev 1 Nicolai Josuttis 2022-11-13 2022-12 P2644R0 CWG Core
P2647R1 Permitting static constexpr variables in constexpr functions Barry Revzin 2022-11-08 2022-12 P2647R0 EWG Evolution
P2649R0 2022-10 Library Evolution Poll Outcomes Bryce Adelstein Lelbach 2022-11-11 2022-12   LEWG Library Evolution
P2650R0 2022-11 Library Evolution Polls Bryce Adelstein Lelbach 2022-11-17 2022-12   LEWG Library Evolution
P2652R1 Disallow user specialization of allocator_traits Pablo Halpern 2022-11-11 2022-12 P2652R0 LWG Library
P2653R1 Update Annex E based on Unicode 15.0 UAX 31 Steve Downey 2022-10-20 2022-12 P2653R0 SG16 Unicode,CWG Core
P2655R1 common_reference_t of reference_wrapper Should Be a Reference Type Hui Xie 2022-11-11 2022-12 P2655R0 SG9 Ranges,LEWG Library Evolution
P2657R1 C++ is the next C++ Jarrad J. Waterloo 2022-11-14 2022-12 P2657R0 EWG Evolution
P2658R1 temporary storage class specifiers Jarrad J. Waterloo 2022-11-14 2022-12 P2658R0 EWG Evolution
P2659R1 A Proposal to Publish a Technical Specification for Contracts Brian Bi 2022-11-14 2022-12 P2659R0 SG21 Contracts,EWG Evolution
P2664R0 Proposal to extend std::simd with permutation API Daniel Towner 2022-10-21 2022-12   SG1 Concurrency and Parallelism,LEWG Library Evolution,LWG Library,Direction Group
P2674R1 A trait for implicit lifetime types Timur Doumler 2022-11-11 2022-12 P2674R0 CWG Core,LWG Library
P2679R1 Fixing std::start_lifetime_as and std::start_lifetime_as_array Timur Doumler 2022-11-11 2022-12 P2679R0 CWG Core,LWG Library
P2681R0 More Stats Functions Richard Dosselmann 2022-11-07 2022-12   SG6 Numerics,SG19 Machine Learning
P2693R0 Formatting thread::id and stacktrace Corentin Jabot 2022-11-11 2022-12   LEWG Library Evolution
P2695R0 A proposed plan for contracts in C++ Timur Doumler 2022-11-17 2022-12   SG21 Contracts,EWG Evolution
P2696R0 Introduce Cpp17Swappable as additional convenience requirements Daniel Krügler 2022-11-07 2022-12   LWG Library
P2697R0 Interfacing bitset with string_view Michael Florian Hava 2022-11-12 2022-12   LEWG Library Evolution
P2698R0 Unconditional termination is a serious problem Bjarne Stroustrup 2022-11-18 2022-12   SG21 Contracts
P2700R0 Questions on P2680 "Contracts for C++: Prioritizing Safety" Timur Doumler 2022-11-29 2022-12   SG21 Contracts
P2701R0 Translating Linker Input Files to Module Metadata Files Daniel Ruoso 2022-11-08 2022-12   SG15 Tooling
P2702R0 Specifying Importable Headers Daniel Ruoso 2022-11-08 2022-12   SG15 Tooling
P2703R0 C++ Standard Library Ready Issues to be moved in Kona, Nov. 2022 Jonathan Wakely 2022-11-07 2022-12   All of WG21
P2704R0 C++ Standard Library Immediate Issues to be moved in Kona, Nov. 2022 Jonathan Wakely 2022-11-20 2022-12   All of WG21
P2705R0 C++ Library Fundamentals TS Issues to be moved in Kona, Nov. 2022 Jonathan Wakely 2022-11-07 2022-12   All of WG21
P2706R0 Drafting for US 26-061: Redundant specification for defaulted functions Jason Merrill 2022-11-08 2022-12   CWG Core
P2708R0 No Future Fundamentals TSes Alisdair Meredith 2022-11-10 2022-12   LEWG Library Evolution
P2708R1 No Future Fundamentals TSes Alisdair Meredith 2022-11-10 2022-12 P2708R0 LWG Library
P2709R0 Core Language Working Group "ready" Issues for the November, 2022 meeting Jens Maurer 2022-11-11 2022-12   All of WG21
P2710R0 Core Language Working Group NB comment resolutions for the November, 2022 meeting Jens Maurer 2022-11-11 2022-12   All of WG21
P2711R0 Making multi-param (and other converting) constructors of views explicit Ville Voutilainen 2022-11-09 2022-12   LEWG Library Evolution,LWG Library
P2711R1 Making multi-param constructors of views explicit Ville Voutilainen 2022-11-11 2022-12 P2711R0 LWG Library
P2712R0 Classification of Contract-Checking Predicates Joshua Berne 2022-11-14 2022-12   SG21 Contracts
P2718R0 Wording for P2644R1 Fix for Range-based for Loop Joshua Berne 2022-11-11 2022-12   CWG Core
P2722R0 Slides: Beyond operator() (P2511R2 presentation) Zhihao Yuan 2022-11-12 2022-12   LEWG Library Evolution
P2723R0 Zero-initialize objects of automatic storage duration JF Bastien 2022-11-15 2022-12   SG12 Undefined and Unspecified Behavior,SG22 Compatability,EWG Evolution
P2725R0 std::integral_constant Literals Zach Laine 2022-11-18 2022-12   LEWGI SG18: LEWG Incubator,LEWG Library Evolution
P2726R0 Better std::tuple Indexing Zach Laine 2022-11-18 2022-12   LEWGI SG18: LEWG Incubator,LEWG Library Evolution
P2727R0 std::iterator_interface Zach Laine 2022-11-20 2022-12   LEWGI SG18: LEWG Incubator,LEWG Library Evolution

2022-09 Mailing Available

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

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
N4917 Working Draft, Standard for Programming Language C++ Thomas Köppe 2022-09-04 2022-09   All of WG21
N4918 Editors' Report - Programming Languages - C++ Thomas Köppe 2022-09-08 2022-09   All of WG21
N4920 Working Draft, C++ Extensions for Library Fundamentals, Version 3 Thomas Köppe 2022-08-15 2022-09   All of WG21
N4921 Editor's Report: C++ Extensions for Library Fundamentals, Version 3 Thomas Köppe 2022-08-15 2022-09   All of WG21
N4922 INCITS C++/WG21 agenda: 7-12 November 2022, Kona, HI US John Spicer 2022-09-05 2022-09   All of WG21
P0543R2 Saturation arithmetic Jens Maurer 2022-09-18 2022-09 P0543R1 LWG Library
P0792R11 function_ref: a non-owning reference to a Callable Vittorio Romeo 2022-09-13 2022-09 P0792R10 LWG Library
P0957R9 Proxy: A Polymorphic Programming Library Mingxin Wang 2022-09-15 2022-09 P0957R8 LEWGI SG18: LEWG Incubator,LEWG Library Evolution
P0987R1 polymorphic_allocator instead of type-erasure Pablo Halpern 2022-09-14 2022-09 P0987R0 LWG Library
P1030R5 std::filesystem::path_view Niall Douglas 2022-09-15 2022-09 P1030R4 LEWG Library Evolution
P1985R3 Universal template parameters Gašper Ažman 2022-09-17 2022-09 P1985R1 SG7 Reflection,EWG Evolution,LEWG Library Evolution
P2348R3 Whitespaces Wording Revamp Corentin Jabot 2022-09-11 2022-09 P2348R2 EWG Evolution,CWG Core
P2495R1 Interfacing stringstreams with string_view Michael Hava 2022-09-14 2022-09 P2495R0 LEWG Library Evolution
P2586R0 Standard Secure Networking Niall Douglas 2022-09-13 2022-09   SG4 Networking,LEWG Library Evolution
P2587R3 to_string or not to_string Victor Zverovich 2022-08-28 2022-09 P2587R2 LWG Library
P2588R1 Relax std::barrier phase completion step guarantees Gonzalo Brito 2022-09-06 2022-09 P2588R0 SG1 Concurrency and Parallelism,LEWG Library Evolution
P2603R1 member function pointer to function pointer Jarrad Waterloo 2022-09-04 2022-09 P2603R0 EWG Evolution,LEWG Library Evolution
P2620R2 Improve the wording for Universal Character Names in identifiers Corentin Jabot 2022-09-13 2022-09 P2620R1 CWG Core
P2623R2 implicit constant initialization Jarrad J. Waterloo 2022-09-12 2022-09 P2623R1 EWG Evolution
P2631R0 Publish TS Library Fundamentals v3 Now! Alisdair Meredith 2022-09-12 2022-09   LEWG Library Evolution,LWG Library
P2636R0 References to ranges should always be viewable Hannes Hauswedell 2022-09-14 2022-09   SG9 Ranges,LEWG Library Evolution
P2637R0 Member visit and apply Barry Revzin 2022-09-17 2022-09   LEWG Library Evolution
P2638R0 Intel's response to P1915R0 for std::simd parallelism in TS 2 Daniel Towner 2022-09-21 2022-09   SG1 Concurrency and Parallelism,LEWG Library Evolution,LWG Library
P2639R0 Static Allocations Torben Thaysen 2022-09-21 2022-09   EWGI SG17: EWG Incubator,LEWGI SG18: LEWG Incubator
P2640R0 Modules: Inner-scope Namespace Entities: Exported or Not? Nathan Sidwell 2022-09-12 2022-09   EWG Evolution
P2641R0 Checking if a union alternative is active Barry Revzin 2022-09-17 2022-09   LEWG Library Evolution
P2642R0 Padded mdspan layouts Mark Hoemmen 2022-09-14 2022-09   LEWGI SG18: LEWG Incubator,LEWG Library Evolution
P2643R0 Improving C++ concurrency features Gonzalo Brito Gadeschi 2022-09-15 2022-09   SG1 Concurrency and Parallelism

2022-08 Mailing Available

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

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
N4914 WG21 2022-07 Admin telecon minutes Nina Ranns 2022-08-21 2022-08   All of WG21
N4915 Business Plan and Convener's Report: ISO/IEC JTC1/SC22/WG21 (C++) Herb Sutter 2022-07-20 2022-08   All of WG21
N4916 WG21 2022-07 Virtual Meeting Minutes of Meeting Nina Ranns 2022-08-12 2022-08   All of WG21
P0843R5 static_vector Gonzalo Brito Gadeschi 2022-08-14 2022-08 P0843R4 LEWG Library Evolution
P1255R9 A view of 0 or 1 elements: views::maybe Steve Downey 2022-08-15 2022-08 P1255R8 SG9 Ranges,LEWG Library Evolution
P2019R1 Usability improvements for std::thread Corentin Jabot 2022-08-09 2022-08 P2019R0 SG1 Concurrency and Parallelism
P2164R6 views::enumerate Corentin Jabot 2022-08-09 2022-08 P2164R5 SG9 Ranges,LEWG Library Evolution
P2264R4 Make assert() macro user friendly for C and C++ Peter Sommerlad 2022-08-08 2022-08 P2264R3 LEWG Library Evolution
P2477R3 Allow programmers to control coroutine elision Chuanqi Xu 2022-07-22 2022-08 P2477R2 EWG Evolution
P2511R2 Beyond operator(): NTTP callables in type-erased call wrappers Zhihao Yuan 2022-08-14 2022-08 P2511R1 LWG Library
P2517R1 Add a conditional noexcept specification to std::apply Hewill Kang 2022-08-21 2022-08 P2517R0 LEWG Library Evolution
P2537R1 Relax va_start Requirements to Match C JeanHeyd Meneide 2022-07-22 2022-08 P2537R0 LEWG Library Evolution
P2581R1 Specifying the Interoperability of Built Module Interface Files Daniel Ruoso 2022-07-28 2022-08 P2581R0 SG15 Tooling
P2587R2 to_string or not to_string Victor Zverovich 2022-08-09 2022-08 P2587R1 LWG Library
P2611R0 2022-07 Library Evolution Poll Outcomes Bryce Adelstein Lelbach 2022-07-27 2022-08   LEWG Library Evolution
P2620R1 Lifting artificial restriction on universal character names Corentin Jabot 2022-08-10 2022-08 P2620R0 SG16 Unicode,SG22 Compatability,EWG Evolution
P2621R1 UB? In my Lexer? Corentin Jabot 2022-08-09 2022-08 P2621R0 SG22 Compatability,EWG Evolution
P2623R1 implicit constant initialization Jarrad J. Waterloo 2022-08-14 2022-08 P2623R0 EWG Evolution
P2625R0 Slides: Life without operator() (P2511R1 presentation) Zhihao Yuan 2022-07-19 2022-08   LEWG Library Evolution
P2626R0 charN_t incremental adoption: Casting pointers of UTF character types Corentin Jabot 2022-08-09 2022-08   SG16 Unicode,LEWG Library Evolution
P2627R0 WG21 2022-07 Virtual Meeting Record of Discussion Nina Ranns 2022-08-12 2022-08   All of WG21
P2628R0 Extend barrier APIs with memory_order Gonzalo Brito Gadeschi 2022-08-11 2022-08   SG1 Concurrency and Parallelism
P2629R0 barrier token-less split arrive/wait Gonzalo Brito Gadeschi 2022-08-11 2022-08   SG1 Concurrency and Parallelism
P2630R0 Submdspan Christian Trott 2022-08-14 2022-08   LEWG Library Evolution
P2633R0 thread_local_inherit: Enhancing thread-local storage Justin Cooke 2022-08-21 2022-08   SG1 Concurrency and Parallelism,EWG Evolution
P2634R0 Allow qualifiers in constructor declarations Justin Cooke 2022-08-21 2022-08   EWG Evolution
P2635R0 Enhancing the break statement Justin Cooke 2022-08-21 2022-08   EWG Evolution