Standardization

2021-05 Mailing Available

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

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
P0009R11 MDSPAN Christian Trott 2021-05-15 2021-05 P0009R10 LWG Library
P0009R12 MDSPAN Christian Trott 2021-05-20 2021-05 P0009R11 LWG Library
P0447R14 Introduction of std::colony to the standard library Matt Bentley 2021-04-20 2021-05 P0447R13 SG14 Low Latency,LEWG Library Evolution,All of WG21
P0493R2 Atomic maximum/minimum Al Grant 2021-05-15 2021-05 P0493R1 SG1 Concurrency and Parallelism,LEWG Library Evolution
P1018R10 C++ Language Evolution status pandemic edition 2021/04 JF Bastien 2021-04-28 2021-05 P1018R9 EWG Evolution,All of WG21
P1068R5 Vector API for random number generation Ilya Burylov 2021-05-14 2021-05 P1068R4 LEWG Library Evolution
P1122R4 Proposed Wording for Concurrent Data Structures: Read-Copy-Update (RCU) Paul E. McKenney 2021-05-14 2021-05 P1122R3 All of WG21
P1328R1 Making std::type_info::operator== constexpr Peter Dimov 2021-05-03 2021-05 P1328R0 LWG Library
P1701R2 Inline Namespaces: Fragility Bites Nathan Sidwell 2021-05-04 2021-05 P1701R1 EWG Evolution
P2013R4 Freestanding Language: Optional ::operator new Ben Craig 2021-05-03 2021-05 P2013R3 CWG Core
P2066R7 Suggested draft TS for C++ Extensions for Minimal Transactional Memory Jens Maurer 2021-05-14 2021-05 P2066R6 LEWG Library Evolution,CWG Core
P2093R6 Formatted output Victor Zverovich 2021-05-13 2021-05 P2093R5 SG16 Unicode,LEWG Library Evolution
P2136R3 invoke_r Zhihao Yuan 2021-04-30 2021-05 P2136R2 LWG Library
P2138R4 Rules of Design<=>Specification engagement Ville Voutilainen 2021-04-19 2021-05 P2138R3 EWG Evolution,LEWG Library Evolution
P2168R3 generator: A Synchronous Coroutine Generator Compatible With Ranges Corentin Jabot 2021-04-19 2021-05 P2168R2 LEWG Library Evolution
P2280R2 Using unknown references in constant expressions Barry Revzin 2021-05-15 2021-05 P2280R1 EWG Evolution
P2291R1 Add Constexpr Modifiers to Functions to_chars and from_chars for Integral Types in Header Daniil Goncharov 2021-05-05 2021-05 P2291R0 LEWG Library Evolution,LWG Library
P2299R1 `mdspan` and CTAD Bryce Adelstein Lelbach 2021-04-19 2021-05 P2299R0 LEWG Library Evolution
P2299R2 `mdspan` and CTAD Bryce Adelstein Lelbach 2021-05-20 2021-05 P2299R1 LEWG Library Evolution
P2303R3 Function literals and value closures Jens Gustedt 2021-05-15 2021-05 P2303R2 SG22 Compatability
P2304R2 Improve type generic programming Jens Gustedt 2021-05-15 2021-05 P2304R1 SG22 Compatability
P2305R3 Type inference for variable definitions and function returns Jens Gustedt 2021-05-15 2021-05 P2305R2 SG22 Compatability
P2306R2 Type-generic lambdas Jens Gustedt 2021-05-15 2021-05 P2306R1 SG22 Compatability
P2307R2 Lvalue closures Jens Gustedt 2021-05-15 2021-05 P2307R1 SG22 Compatability
P2311R1 Make false and true first-class language features Jens Gustedt 2021-05-09 2021-05 P2311R0 SG22 Compatability
P2314R2 Character sets and encodings Jens Maurer 2021-05-14 2021-05 P2314R1 CWG Core,LWG Library
P2325R3 Views should not be required to be default constructible Barry Revzin 2021-05-14 2021-05 P2325R2 LEWG Library Evolution
P2328R1 join_view should join all views of ranges Tim Song 2021-05-08 2021-05 P2328R0 LWG Library
P2334R1 Add support for preprocessing directives elifdef and elifndef Melanie Blower 2021-04-30 2021-05 P2334R0 EWG Evolution,CWG Core
P2351R0 Mark all library static cast wrappers as [[nodiscard]] Hana Dusíková 2021-04-25 2021-05   LEWG Library Evolution
P2367R0 Remove misuses of list-initialization from Clause 24 Tim Song 2021-04-29 2021-05   LWG Library
P2368R0 2020 Winter Library Evolution Polls Bryce Adelstein Lelbach 2021-04-27 2021-05   LEWG Library Evolution
P2371R0 P0798R6: Monadic operations for std::optional Sy Brand 2021-04-27 2021-05   LWG Library
P2372R0 Fixing locale handling in chrono formatters Victor Zverovich 2021-05-03 2021-05   LEWG Library Evolution
P2372R1 Fixing locale handling in chrono formatters Victor Zverovich 2021-05-13 2021-05 P2372R0 LEWG Library Evolution,LWG Library
P2374R0 views::cartesian_product Sy Brand 2021-05-04 2021-05   LEWG Library Evolution
P2374R1 views::cartesian_product Sy Brand 2021-05-11 2021-05 P2374R0 LEWG Library Evolution
P2375R0 Generalisation of nth_element to a range of nths Johan Lundberg 2021-05-15 2021-05   EWG Evolution
P2376R0 Comments on Simple Statistical Functions (p1708r4): Contracts, Exceptions and Special cases Johan Lundberg 2021-05-11 2021-05   SG6 Numerics,SG19 Machine Learning
P2377R0 [[nodiscard]] in the Standard Library: Clause 23 Iterators library Christopher Di Bella 2021-05-14 2021-05   LEWG Library Evolution
P2378R0 Properly define blocks as part of the grammar Jens Gustedt 2021-05-15 2021-05   SG22 Compatability
P2380R0 reference_wrapper Associations Robert Leahy 2021-05-15 2021-05   SG4 Networking
P2381R0 Pattern Matching with Exception Handling Jarrad J. Waterloo 2021-05-15 2021-05   EWG Evolution
P2382R0 Presentation Slides for P2123R0 Hal Finkel 2021-05-15 2021-05   LEWG Library Evolution

Report from the virtual ISO C++ meetings in 2020 (core language)--Jason Merrill

Did you attend?

Report from the virtual ISO C++ meetings in 2020 (core language)

by Jason Merrill

From the article:

C++ standardization was dramatically different in 2020 from earlier years. The business of the International Organization for Standardization (ISO) committee all took place virtually, much like everything else during this pandemic. This article summarizes the C++ standardization proposals before the Core and Evolution Working Groups last year...

2021-04 Mailing Available

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

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
P0323R10 std::expected JF Bastien 2021-04-15 2021-04 P0323R9 LWG Library
P0447R13 Introduction of std::colony to the standard library Matt Bentley 2021-03-24 2021-04 P0447R12 SG14 Low Latency,LEWG Library Evolution,All of WG21
P1121R3 Hazard Pointers: Proposed Interface and Wording for Concurrency TS 2 Maged M. Michael 2021-04-09 2021-04 P1121R2 All of WG21
P1122R3 Proposed Wording for Concurrent Data Structures: Read-Copy-Update (RCU) Paul E. McKenney 2021-03-25 2021-04 P1122R2 LWG Library
P1132R7 out_ptr - a scalable output pointer abstraction JeanHeyd Meneide 2021-04-16 2021-04 P1132R6 LWG Library
P1169R1 static operator() Barry Revzin 2021-04-05 2021-04 P1169R0 EWG Evolution
P1401R5 Narrowing contextual conversions to bool Andrzej Krzemieński 2021-04-12 2021-04 P1401R4 CWG Core
P1664R3 reconstructible_range - a concept for putting ranges back together JeanHeyd Meneide 2021-04-16 2021-04 P1664R2 LEWG Library Evolution
P1673R3 A free function linear algebra interface based on the BLAS Mark Hoemmen 2021-04-14 2021-04 P1673R2 LEWG Library Evolution
P1706R3 Programming Language Vulnerabilities for Safety Critical C++ Michael Wong 2021-04-14 2021-04 P1706R2 SG12 Undefined and Unspecified Behavior
P1708R4 Simple Statistical Functions Richard Dosselman 2021-04-14 2021-04 P1708R3 SG6 Numerics,SG19 Machine Learning,LEWG Library Evolution
P1847R4 Make declaration order layout mandated Pal Balog 2021-04-12 2021-04 P1847R3 CWG Core
P1938R3 if consteval Barry Revzin 2021-03-22 2021-04 P1938R2 EWG Evolution
P1949R7 C++ Identifier Syntax using Unicode Standard Annex 31 Steve Downey 2021-04-14 2021-04 P1949R6 CWG Core
P1967R3 #embed - a simple, scannable preprocessor-based resource acquisition method JeanHeyd Meneide 2021-04-15 2021-04 P1967R2 EWG Evolution
P1989R2 Range constructor for std::string_view 2: Constrain Harder Corentin Jabot 2021-03-17 2021-04 P1989R1 LWG Library
P2128R4 Multidimensional subscript operator Corentin Jabot 2021-03-18 2021-04 P2128R3 EWG Evolution
P2128R5 Multidimensional subscript operator Corentin Jabot 2021-04-13 2021-04 P2128R4 EWG Evolution
P2168R2 generator: A Synchronous Coroutine Generator Compatible With Ranges Corentin Jabot 2021-03-22 2021-04 P2168R1 LEWG Library Evolution
P2186R2 Removing Garbage Collection Support JF Bastien 2021-04-16 2021-04 P2186R1 CWG Core,LWG Library
P2201R1 Mixed string literal concatenation Jens Maurer 2021-04-12 2021-04 P2201R0 CWG Core
P2223R2 Trimming whitespaces before line splicing Corentin Jabot 2021-04-13 2021-04 P2223R1 EWG Evolution,CWG Core
P2251R1 Require span & basic_string_view to be Trivially Copyable Nevin Liber 2021-03-19 2021-04 P2251R0 LEWG Library Evolution
P2255R1 A type trait to detect reference binding to temporary Tim Song 2021-04-11 2021-04 P2255R0 EWG Evolution,LEWG Library Evolution
P2265R1 Renaming any_invocable Kevlin Henney 2021-04-17 2021-04 P2265R0 LEWG Library Evolution
P2273R1 Making std::unique_ptr constexpr Andreas Fertig 2021-04-13 2021-04 P2273R0 LEWG Library Evolution
P2283R1 constexpr for specialized memory algorithms Michael Schellenberger Costa 2021-04-18 2021-04 P2283R0 LEWG Library Evolution
P2295R1 Correct UTF-8 handling during phase 1 of translation Corentin Jabot 2021-03-21 2021-04 P2295R0 SG16 Unicode,SG22 Compatability,EWG Evolution
P2295R2 Support for UTF-8 as a portable source file encoding Corentin Jabot 2021-04-13 2021-04 P2295R1 SG16 Unicode,SG22 Compatability,EWG Evolution
P2295R3 Support for UTF-8 as a portable source file encoding Corentin Jabot 2021-04-15 2021-04 P2295R2 SG16 Unicode,SG22 Compatability,EWG Evolution
P2303R2 Function literals and value closures Jens Gustedt 2021-03-29 2021-04 P2303R1 SG22 Compatability
P2304R1 Improve type generic programming Jens Gustedt 2021-03-29 2021-04 P2304R0 SG22 Compatability
P2305R2 Type inference for variable definitions and function returns Jens Gustedt 2021-03-29 2021-04 P2305R1 SG22 Compatability
P2306R1 Type-generic lambdas Jens Gustedt 2021-03-29 2021-04 P2306R0 SG22 Compatability
P2307R1 Lvalue closures Jens Gustedt 2021-03-29 2021-04 P2307R0 SG22 Compatability
P2312R1 Introduce the nullptr constant Jens Gustedt 2021-03-31 2021-04 P2312R0 SG22 Compatability
P2318R1 A Provenance-aware Memory Object Model for C Jens Gustedt 2021-03-24 2021-04 P2318R0 SG22 Compatability
P2321R1 zip Tim Song 2021-04-11 2021-04 P2321R0 LEWG Library Evolution,LWG Library
P2322R2 ranges::fold Barry Revzin 2021-04-14 2021-04 P2322R1 LEWG Library Evolution
P2325R2 Views should not be required to be default constructible Barry Revzin 2021-04-23 2021-04 P2325R1 LEWG Library Evolution
P2327R0 De-deprecating volatile compound assignment Paul Bendixen 2021-04-14 2021-04   SG14 Low Latency,EWG Evolution
P2337R0 Less constexpr for <cmath> Nicholas G Timmons 2021-03-22 2021-04   SG6 Numerics,LEWG Library Evolution
P2342R0 For a Few Punctuators More Corentin Jabot 2021-03-25 2021-04   SG7 Reflection,EWG Evolution
P2345R0 Relaxing Requirements of Moved-From Objects Sean Parent 2021-04-15 2021-04   LEWG Library Evolution,LWG Library
P2348R0 Whitespaces Wording Revamp Corentin Jabot 2021-04-14 2021-04   CWG Core
P2350R0 constexpr class Andreas Fertig 2021-04-13 2021-04   EWG Evolution
P2352R0 SG16: Unicode meeting summaries 2020-12-09 through 2021-03-24 Tom Honermann 2021-04-04 2021-04   SG16 Unicode
P2353R0 Metaprograms and fragments are needed in comma-separated contexts David Rector 2021-04-05 2021-04   SG7 Reflection
P2355R0 Postfix fold expressions S. Davis Herring 2021-04-12 2021-04   EWG Evolution
P2356R0 Implementing Factory builder on top of P2320 Matus Chochlik 2021-04-09 2021-04   SG7 Reflection
P2358R0 Defining Contracts Gašper Ažman 2021-04-15 2021-04   SG21 Contracts
P2360R0 Extend init-statement to allow alias-declaration Jens Maurer 2021-04-13 2021-04   EWG Evolution
P2361R0 Unevaluated string literals Corentin Jabot 2021-04-14 2021-04   SG16 Unicode,EWG Evolution
P2362R0 Make obfuscating wide character literals ill-formed Peter Brett 2021-04-14 2021-04   SG16 Unicode,EWG Evolution
P2363R0 Extending associative containers with the remaining heterogeneous overloads Konstantin Boyarinov 2021-04-15 2021-04   LEWG Library Evolution

Five Awesome C++ Papers for the Q1 2021 and C++23 Status--Bartlomiej Filipek

c++ continues to evolve.

Five Awesome C++ Papers for the Q1 2021 and C++23 Status

by Bartlomiej Filipek

From the article:

Between 2018 and 2020, I released several articles with top 5 proposals just around a new ISO C++ meeting happened. Since March 2020, this pattern broke as the meeting went online. Why not restart the series? smile We can look at the recent papers from a whole Quarter.

Let’s start!

D2349: std::pony -- Ville Voutilainen

Just posted between the mid-month standards mailings:

d2349r0: std::pony

by Ville Voutilainen

From the paper:

This is a proposal to lay to rest the long-standing question of whether C++ should optimize velocity or stability... This proposal has three things it proposes:

  • two new decl-specifiers, my and little, for the core language, and an accompanying name lookup change
  • the main library facility itself
  • allocator support for the main library facility

2021-03 Mailing Available

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

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
N4884 WG21 2021-02 Virtual Meeting Minutes of Meeting Nina Ranns 2021-03-09 2021-03   All of WG21
N4885 Working Draft, Standard for Programming Language C++ Thomas Köppe 2021-03-16 2021-03   All of WG21
N4886 Editors' Report - Programming Languages - C++ Thomas Köppe 2021-03-16 2021-03   All of WG21
P0448R4 A strstream replacement using span as buffer Peter Sommerlad 2021-03-01 2021-03 P0448R3 LWG Library
P0958R3 Networking TS changes to support proposed Executors TS Christopher Kohlhoff 2021-03-24 2021-03 P0958R2 SG4 Networking
P1018R9 C++ Language Evolution status  pandemic edition 2021/01–2021/03 JF Bastien 2021-03-08 2021-03 P1018R8 EWG Evolution,All of WG21
P1315R7 secure_clear Miguel Ojeda 2021-03-10 2021-03 P1315R6 CWG Core,LWG Library
P1425R4 Iterators pair constructors for stack and queue Corentin Jabot 2021-03-05 2021-03 P1425R3 LEWG Library Evolution,LWG Library
P1518R1 Stop overconstraining allocators in container deduction guides Arthur O'Dwyer 2021-02-23 2021-03 P1518R0 LWG Library
P1518R2 Stop overconstraining allocators in container deduction guides Arthur O'Dwyer 2021-03-14 2021-03 P1518R1 LWG Library
P1875R2 Transactional Memory Lite Support in C++ Michael Spear 2021-03-14 2021-03 P1875R1 SG1 Concurrency and Parallelism,EWG Evolution
P2025R2 Guaranteed copy elision for return variables Anton Zhilin 2021-03-24 2021-03 P2025R1 EWG Evolution,CWG Core
P2041R1 template = delete David Stone 2021-03-10 2021-03 P2041R0 EWG Evolution
P2066R6 Suggested draft TS for C++ Extensions for Minimal Transactional Memory Jens Maurer 2021-03-15 2021-03 P2066R5 SG1 Concurrency and Parallelism,SG5 Transactional Memory,EWG Evolution,LEWG Library Evolution
P2093R5 Formatted output Victor Zverovich 2021-03-14 2021-03 P2093R4 LEWG Library Evolution
P2210R2 Superior String Splitting Barry Revzin 2021-03-05 2021-03 P2210R1 LWG Library
P2242R2 Non-literal variables (and labels and gotos) in constexpr functions Ville Voutilainen 2021-03-15 2021-03 P2242R1 EWG Evolution,CWG Core
P2266R1 Simpler implicit move Arthur O'Dwyer 2021-03-13 2021-03 P2266R0 EWG Evolution,CWG Core
P2299R0 `mdspan` and CTAD Bryce Adelstein Lelbach 2021-02-27 2021-03   LEWG Library Evolution
P2303R1 Function literals and value closures Jens Gustedt 2021-03-01 2021-03 P2303R0 SG22 Compatability
P2305R1 Type inference for variable definitions and function returns Jens Gustedt 2021-03-01 2021-03 P2305R0 SG22 Compatability
P2313R0 Core Language Working Group "tentatively ready" issues for the February, 2021 meeting William M. (Mike) Miller 2021-03-24 2021-03   All of WG21
P2314R1 Character sets and encodings Jens Maurer 2021-03-15 2021-03 P2314R0 SG16 Unicode,EWG Evolution
P2318R0 A Provenance-aware Memory Object Model for C Jens Gustedt 2021-02-27 2021-03   SG22 Compatability
P2322R1 ranges::fold Barry Revzin 2021-03-16 2021-03 P2322R0 LEWG Library Evolution
P2325R1 Views should not be required to be default constructible Barry Revzin 2021-03-16 2021-03 P2325R0 LEWG Library Evolution
P2328R0 join_view should join all views of ranges Tim Song 2021-03-15 2021-03   LEWG Library Evolution
P2330R0 WG21 2021-02 Virtual Meeting Record of Discussion Nina Ranns 2021-03-09 2021-03   All of WG21
P2331R0 Unsequenced functions Étienne Alepins 2021-03-02 2021-03   SG22 Compatability
P2332R0 Establishing std::hive as replacement name for the proposed std::colony container Matthew Bentley 2021-03-08 2021-03   LEWG Library Evolution
P2333R0 2021 Winter Library Evolution Poll Outcomes Bryce Adelstein Lelbach 2021-03-12 2021-03   LEWG Library Evolution
P2334R0 Add support for preprocessing directives elifdef and elifndef Melanie Blower 2021-03-12 2021-03   SG22 Compatability,EWG Evolution
P2338R0 Freestanding Library: Character primitives and the C library Ben Craig 2021-03-13 2021-03   SG14 Low Latency,SG22 Compatability,LEWG Library Evolution
P2339R0 Contract violation handlers Andrzej Krzemieński 2021-03-15 2021-03   SG21 Contracts
P2340R0 Clarifying the status of the "C headers" Thomas Köppe 2021-03-15 2021-03   SG22 Compatability,LEWG Library Evolution,LWG Library
P2400R0 Library Evolution Report Bryce Adelstein Lelbach 2021-02-27 2021-03   All of WG21

2021-02 Mailing Available

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

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
N4880 PL22.16/WG21 agenda: 22 February 2021, Virtual Meeting John Spicer 2021-01-23 2021-02   All of WG21
N4881 WG21 virtual meetings: 2021-02, -06, and -10 Herb Sutter 2021-02-08 2021-02   All of WG21
N4882 WG21 admin telecon meetings: 2021-02, -05, and -09 Herb Sutter 2021-02-08 2021-02   All of WG21
N4883 WG21 February 2021 admin telecon minutes Nina Ranns 2021-02-16 2021-02   All of WG21
P0401R6 Providing size feedback in the Allocator interface Chris Kennelly 2021-02-15 2021-02 P0401R5 LWG Library
P0448R3 A strstream replacement using span as buffer Peter Sommerlad 2021-02-17 2021-02 P0448R2 LWG Library
P0849R7 auto(x): decay-copy in the language Zhihao Yuan 2021-02-15 2021-02 P0849R6 EWG Evolution,LWG Library
P1018R8 C++ Language Evolution status pandemic edition 2020/11–2021/01 JF Bastien 2021-01-27 2021-02 P1018R7 EWG Evolution,All of WG21
P1072R7 basic_string::resize_and_overwrite Chris Kennelly 2021-02-15 2021-02 P1072R6 LWG Library
P1322R3 Networking TS enhancement to enable custom I/O executors Christopher Kohlhoff 2021-02-14 2021-02 P1322R2 SG4 Networking,LEWG Library Evolution
P1425R3 Iterators pair constructors for stack and queue Corentin Jabot 2021-02-18 2021-02 P1425R2 LEWG Library Evolution,LWG Library
P1659R2 starts_with and ends_with Christopher Di Bella 2021-02-10 2021-02 P1659R1 LWG Library
P1659R3 starts_with and ends_with Christopher Di Bella 2021-02-19 2021-02 P1659R2 LWG Library
P1682R3 std::to_underlying JeanHeyd Meneide 2021-01-22 2021-02 P1682R2 LWG Library
P1885R5 Naming Text Encodings to Demystify Them Corentin Jabot 2021-02-15 2021-02 P1885R4 SG16 Unicode,LEWG Library Evolution
P1951R1 Default Arguments for pair's Forwarding Constructor Logan R. Smith 2021-02-21 2021-02 P1951R0 LWG Library
P2047R1 An allocator-aware optional type Nina Ranns 2021-02-19 2021-02 P2047R0 LEWGI SG18: LEWG Incubator,LEWG Library Evolution
P2066R5 Suggested draft TS for C++ Extensions for Minimal Transactional Memory Jens Maurer 2021-02-14 2021-02 P2066R4 SG1 Concurrency and Parallelism,SG5 Transactional Memory,EWG Evolution,LEWG Library Evolution
P2093R4 Formatted output Victor Zverovich 2021-02-15 2021-02 P2093R3 LEWG Library Evolution
P2128R3 Multidimensional subscript operator Corentin Jabot 2021-02-15 2021-02 P2128R2 EWG Evolution
P2162R2 Inheriting from std::variant (resolving LWG3052) Barry Revzin 2021-02-17 2021-02 P2162R1 LEWG Library Evolution
P2164R4 views::enumerate Corentin Jabot 2021-02-18 2021-02 P2164R3 LEWG Library Evolution
P2195R2 Electronic Straw Polls Bryce Adelstein Lelbach 2021-01-27 2021-02 P2195R1 All of WG21
P2216R3 std::format improvements Victor Zverovich 2021-02-15 2021-02 P2216R2 LWG Library
P2231R1 Add further constexpr support for optional/variant Barry Revzin 2021-02-11 2021-02 P2231R0 LEWG Library Evolution
P2234R1 Consider a UB and IF-NDR Audit Scott Schurr 2021-02-13 2021-02 P2234R0 SG12 Undefined and Unspecified Behavior,EWGI SG17: EWG Incubator
P2242R1 Non-literal variables (and labels and gotos) in constexpr functions Ville Voutilainen 2021-02-14 2021-02 P2242R0 EWG Evolution,CWG Core
P2249R0 Mixed comparisons for smart pointers Giuseppe D'Angelo 2021-01-30 2021-02   LEWGI SG18: LEWG Incubator,LEWG Library Evolution
P2280R1 Using unknown references in constant expressions Barry Revzin 2021-02-15 2021-02 P2280R0 EWG Evolution
P2281R1 Clarifying range adaptor objects Tim Song 2021-02-19 2021-02 P2281R0 LWG Library
P2286R1 Formatting Ranges Barry Revzin 2021-02-19 2021-02 P2286R0 LEWG Library Evolution
P2287R1 Designated-initializers for base classes Barry Revzin 2021-02-15 2021-02 P2287R0 EWG Evolution
P2289R0 2021 Winter Library Evolution Polls Bryce Adelstein Lelbach 2021-01-31 2021-02   LEWG Library Evolution
P2290R0 Delimited escape sequences Corentin Jabot 2021-02-18 2021-02   SG22 Compatability,EWG Evolution
P2291R0 Add Constexpr Modifiers to Functions to_chars and from_chars for Integral Types in Header Daniil Goncharov 2021-01-28 2021-02   LEWGI SG18: LEWG Incubator,LEWG Library Evolution,LWG Library
P2295R0 Correct UTF-8 handling during phase 1 of translation Corentin Jabot 2021-02-15 2021-02   SG16 Unicode,SG22 Compatability,EWG Evolution
P2297R0 Wording improvements for encodings and character sets Corentin Jabot 2021-02-19 2021-02   SG16 Unicode
P2301R0 Add a pmr alias for std::stacktrace Steve Downey 2021-02-15 2021-02   LEWG Library Evolution,LWG Library
P2302R0 Prefer std::ranges::contains over std::basic_string_view::contains Christopher Di Bella 2021-02-10 2021-02   LEWG Library Evolution
P2303R0 Function literals and value closures Jens Gustedt 2021-02-10 2021-02   SG22 Compatability
P2304R0 Improve type generic programming Jens Gustedt 2021-02-10 2021-02   SG22 Compatability
P2305R0 Type inference for variable definitions and function returns Jens Gustedt 2021-02-10 2021-02   SG22 Compatability
P2306R0 Type-generic lambdas Jens Gustedt 2021-02-10 2021-02   SG22 Compatability
P2307R0 Lvalue closures Jens Gustedt 2021-02-10 2021-02   SG22 Compatability
P2309R0 A common C/C++ core specification Jens Gustedt 2021-02-11 2021-02   SG22 Compatability
P2310R0 Revise spelling of keywords Jens Gustedt 2021-02-11 2021-02   SG22 Compatability
P2311R0 Make false and true first-class language features Jens Gustedt 2021-02-11 2021-02   SG22 Compatability
P2312R0 Introduce the nullptr constant Jens Gustedt 2021-02-15 2021-02   SG22 Compatability
P2314R0 Character sets and encodings Jens Maurer 2021-02-12 2021-02   SG16 Unicode,EWG Evolution
P2315R0 C++ Standard Library Issues to be moved in Virtual Plenary, Feb. 2021 Jonathan Wakely 2021-02-12 2021-02   All of WG21
P2316R0 Consistent character literal encoding Corentin Jabot 2021-02-18 2021-02   SG22 Compatability,EWG Evolution
P2317R0 C++ - An Invisible foundation of everything Bjarne Stroustrup 2021-02-14 2021-02   All of WG21
P2320R0 The Syntax of Static Reflection Andrew Sutton 2021-02-15 2021-02   SG7 Reflection
P2321R0 zip Tim Song 2021-02-20 2021-02   LEWG Library Evolution
P2322R0 ranges::fold Barry Revzin 2021-02-18 2021-02   LEWG Library Evolution
P2323R0 maybe_unused attribute for labels Martin Uecker 2021-02-16 2021-02   SG22 Compatability
P2324R0 Labels at the end of compound statements (C compatibility) Martin Uecker 2021-02-16 2021-02   SG22 Compatability
P2325R0 Views should not be required to be default constructible Barry Revzin 2021-02-17 2021-02   LEWG Library Evolution

2021-01 mailing available

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

 

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup
P0447R12 Introduction of std::colony to the standard library Matt Bentley 2021-01-14 2021-01 P0447R11 SG14 Low Latency,LEWG Library Evolution,All of WG21
P0847R6 Deducing this Barry Revzin 2021-01-15 2021-01 P0847R5 EWG Evolution
P1121R2 Hazard Pointers: Proposed Interface and Wording for Concurrency TS 2 Maged M. Michael 2021-01-14 2021-01 P1121R1 LWG Library
P1425R2 Iterators pair constructors for stack and queue Corentin Jabot 2021-01-18 2021-01 P1425R1 LEWG Library Evolution,LWG Library
P1682R2 std::to_underlying JeanHeyd Meneide 2021-01-16 2021-01 P1682R1 LWG Library
P1708R3 Simple Statistical Functions Richard Dosselman 2021-01-14 2021-01 P1708R2 SG19 Machine Learning
P1989R1 Range constructor for std::string_view 2: Constrain Harder Corentin Jabot 2021-01-17 2021-01 P1989R0 LWG Library
P2036R1 Changing scope for lambda trailing-return-type Barry Revzin 2021-01-13 2021-01 P2036R0 EWG Evolution
P2072R1 Differentiable programming for C++ Marco Foco 2021-01-14 2021-01 P2072R0 All of WG21
P2093R3 Formatted output Victor Zverovich 2020-12-26 2021-01 P2093R2 LEWG Library Evolution
P2168R1 generator: A Synchronous Coroutine Generator Compatible With Ranges Corentin Jabot 2021-01-18 2021-01 P2168R0 LEWG Library Evolution
P2210R1 Superior String Splitting Barry Revzin 2021-01-04 2021-01 P2210R0 LEWG Library Evolution
P2216R2 std::format improvements Victor Zverovich 2021-01-14 2021-01 P2216R1 LWG Library
P2232R0 Zero-Overhead Deterministic Exceptions: Catching Values Emil Dotchevski 2021-01-22 2021-01   EWGI SG17: EWG Incubator
P2244R0 SG14: Low Latency/Games/Embedded/Finance/Simulation Meeting Minutes Michael Wong 2021-01-14 2021-01   SG14 Low Latency
P2245R0 SG19: Machine Learning Meeting Minutes Michael Wong 2021-01-14 2021-01   SG19 Machine Learning
P2246R1 Character encoding of diagnostic text Aaron Ballman 2021-01-15 2021-01 P2246R0 EWG Evolution
P2259R1 Repairing input range adaptors and counted_iterator Tim Song 2021-01-13 2021-01 P2259R0 LWG Library
P2266R0 Simpler implicit move Arthur O'Dwyer 2021-01-07 2021-01   EWG Evolution,CWG Core
P2276R0 Fix std::cbegin(), std::ranges::cbegin, and cbegin() for span (fix of wrong fix of lwg3320) Nicolai Josuttis 2021-01-15 2021-01   LEWG Library Evolution,LWG Library
P2277R0 Packs outside of Templates Barry Revzin 2021-01-03 2021-01   EWG Evolution
P2278R0 cbegin should always return a constant iterator Barry Revzin 2021-01-10 2021-01   LEWG Library Evolution
P2279R0 We need a language mechanism for customization points Barry Revzin 2021-01-15 2021-01   EWG Evolution
P2280R0 Using unknown references in constant expressions Barry Revzin 2021-01-13 2021-01   EWG Evolution
P2281R0 Clarifying range adaptor objects Tim Song 2021-01-14 2021-01   LWG Library
P2283R0 constexpr for specialized memory algorithms Michael Schellenberger Costa 2021-01-12 2021-01   LEWG Library Evolution
P2285R0 Are default function arguments in the immediate context? Andrzej Krzemieński 2021-01-14 2021-01   EWG Evolution
P2286R0 Formatting Ranges Barry Revzin 2021-01-15 2021-01   LEWG Library Evolution
P2287R0 Designated-initializers for base classes Barry Revzin 2021-01-20 2021-01   EWG Evolution

C++ at the end of 2020--Bartlomiej Filipek

A summary of the year and the future.

C++ at the end of 2020

by Bartlomiej Filipek

From the article:

While 2020 was a crazy and hard year we were fortunate - C++20 was accepted and published, and the work on new features continues.

As usually every year, here’s my overview of the year: the standardization process, features, implementation, compilers, tools, books and more...