Standardization

2019-06 pre-Cologne mailing available (1 of 2)

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

WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup Disposition
N4814 2019 Belfast Meeting Invitation and Information Jamie Allsop 2019-06-16 2019-06 WG21
N4815 Cologne Agenda John Spicer 2019-06-04 2019-06 WG21
N4816 WG21 telecon meeting: Pre-Cologne Herb Sutter 2019-06-01 2019-06 WG21
N4817 2020 Prague Meeting Invitation and Information Hana Dusíková 2019-06-17 2019-06 WG21
N4818 Working Draft, C++ Extensions for Reflection David Sankel 2019-06-17 2019-06 N4766 WG21
N4819 Reflection TS - Editor's Report David Sankel 2019-06-17 2019-06 WG21
N4820 Working Draft, Standard for Programming Language C++ Richard Smith 2019-06-18 2019-06 N4810 WG21
N4821 Editors' Report - Programming Languages - C++ Richard Smith, Thomas Koeppe, Jens Maurer, Dawn Perchik 2019-06-18 2019-06 WG21
P0037R7 Fixed-Point Real Numbers John McFarlane 2019-06-17 2019-06 P0037R6 SG6, LEWGI
P0237R10 Wording for fundamental bit manipulation utilities Vincent Reverdy, Robert J. Brunner 2019-06-17 2019-06 P0237R9 Library
P0267R9 A Proposal to Add 2D Graphics Rendering and Display to C++ Michael B. McLaughlin, Herb Sutter, Jason Zink, Guy Davidson, Michael Kazakov 2019-06-17 2019-06 P0267R8 SG13
P0288R4 any_invocable Ryan McDougall, Matt Calabrese 2019-06-19 2019-06 P0228R3 Library Evolution, Library
P0323R8 std::expected JF Bastien, Vicente Botet 2019-06-16 2019-06 P0323R7 Library
P0330R6 Literal Suffixes for ptrdiff_t and size_t JeanHeyd Meneide, Rein Halbersma 2019-06-17 2019-06 P0330R4 Evolution
P0401R1 Providing size feedback in the Allocator interface Chris Kennelly, Jonathan Wakely 2019-06-16 2019-06 P0401R0 Library Evolution, Library
P0429R7 A Standard flat_map Zach Laine 2019-06-13 2019-06 P0429R6 Library
P0466R4 Layout-compatibility and Pointer-interconvertibility Traits Lisa Lippincott 2019-06-17 2019-06 P0466R3 Core, Library
P0533R5 constexpr for and Oliver Rosten, Edward Rosten 2019-06-17 2019-06 P0533R4 Library
P0554R1 Composition of Arithmetic Types John McFarlane 2019-06-17 2019-06 P0554R0 SG6, LEWGI
P0592R1 To boldly suggest an overall plan for C++23 Ville Voutilainen 2019-06-17 2019-06 P0592R0 WG21
P0593R4 Implicit creation of objects for low-level object manipulation Richard Smith 2019-06-17 2019-06 P0593R3 Core, Library Evolution, Library
P0631R7 Math Constants Lev Minkovsky, John McFarlane 2019-06-16 2019-06 P0631R6 Library
P0642R2 The Concurrent Invocation Library Mingxin Wang, Wei Chen 2019-06-17 2019-06 P0642R1 SG1, Library Evolution, Library
P0645R9 Text Formatting Victor Zverovich 2019-06-16 2019-06 P0645R7 Library
P0652R3 Concurrent associative data structure with unsynchronized view Sergey Murylev, Anton Malakhov, Antony Polukhin 2019-06-14 2019-06 P0652R2 SG1
P0707R4 Metaclasses: Generative C++ Herb Sutter 2019-06-17 2019-06 P0707R3 SG7
P0709R3 Zero-overhead deterministic exceptions: Throwing values Herb Sutter 2019-06-15 2019-06 P0709R2 Evolution, Library Evolution
P0735R1 Interaction of memory_order_consume with release sequences Will Deacon, Jade Alglave 2019-06-17 2019-06 P0735R0 Core
P0784R6 More constexpr containers Daveed Vandevoorde, Peter Dimov,Louis Dionne, Nina Ranns, Richard Smith, Daveed Vandevoorde 2019-06-17 2019-06 P0784R5 Core, Library
P0792R4 function_ref: a non-owning reference to a Callable Vittorio Romeo 2019-06-17 2019-06 P0792R3 Library Evolution
P0797R2 Handling Concurrent Exceptions with Executors Matti Rintala, Michael Wong, Carter Edwards, Patrice Roy, Gordon Brown, Mark Hoemmen 2019-06-17 2019-06 P0797R1 SG1, SG14
P0848R2 Conditionally Trivial Special Member Functions Barry Revzin, Casey Carter 2019-06-16 2019-06 P0848R1 Core
P0849R1 auto(x): decay-copy in the language Zhihao Yuan 2019-06-17 2019-06 P0849R0 EWGI, Library Evolution
P0876R6 fiber_context - fibers without scheduler Oliver Kowalke, Nat Goodspeed 2019-06-17 2019-06 P0876R5 SG1
P0881R5 A Proposal to add stacktrace library Antony Polukhin, Antony Polukhin 2019-06-14 2019-06 P0881R4 Core, Library
P0901R4 Size feedback in operator new Chris Kennelly, Andrew Hunter 2019-06-16 2019-06 P0901R3 Evolution
P0917R2 Making operator?: overloadable Matthias Kretz 2019-06-17 2019-06 P0917R1 EWGI
P0939R3 Direction for ISO C++ H. Hinnant, R. Orr, B. Stroustrup, D. Vandevoorde, M. Wong 2019-06-17 2019-06 P0939R2 WG21
P0943R3 Support C atomics in C++ Hans Boehm 2019-06-17 2019-06 P0943R2 SG1, Library Evolution
P0957R2 PFA: A Generic, Extendable and Efficient Solution for Polymorphic Programming Mingxin Wang 2019-06-17 2019-06 P0957R1 SG7, Library Evolution, Library
P1021R4 Filling holes in Class Template Argument Deduction Mike Spertus, Timur Doumler, Richard Smith 2019-06-17 2019-06 P1021R3 Core
P1028R2 SG14 status_code and standard error object for P0709 Zero-overhead deterministic exceptions Niall Douglas 2019-06-16 2019-06 P1028R1 SG14, LEWGI, Library Evolution
P1029R2 move = relocates Niall Douglas 2019-06-16 2019-06 P1029R1 EWGI, Evolution
P1030R2 std::filesystem::path_view Niall Douglas 2019-06-16 2019-06 P1030R1 LEWGI, Library Evolution
P1031R2 Low level file i/o library Niall Douglas 2019-06-16 2019-06 P1031R1 SG1, SG14, LEWGI, Library Evolution
P1035R6 Input Range Adaptors Christopher Di Bella, Casey Carter, Corentin Jabot 2019-06-17 2019-06 P1035R5 Library
P1050R1 Fractional Numeric Type John McFarlane 2019-06-17 2019-06 P1050R0 SG6, LEWGI
P1065R1 constexpr INVOKE Tomasz Kamiński, Barry Revzin 2019-06-16 2019-06 P1065R0 Library
P1068R1 Vector API for random number generation Ilya Burylov, Pavel Dyakov, Ruslan Arutyunyan, Andrey Nikolaev 2019-06-14 2019-06 P1068R0 SG1
P1072R4 basic_string::resize_default_init Chris Kennelly, Mark Zeren 2019-06-17 2019-06 P1072R3 Library Evolution, Library
P1083R3 Move resource_adaptor from Library TS to the C++ WP Pablo Halpern 2019-06-15 2019-06 P1083R2 Library
P1108R2 web_view Hal Finkel 2019-06-17 2019-06 P1108R1 SG13, LEWGI
P1115R0 Improving the Return Value of Erase-Like Algorithms II: Free erase/erase if Marc Mutz 2019-06-17 2019-06 Library
P1116R0 Re-Gaining Exclusive Ownership from shared_ptrs Marc Mutz 2019-06-17 2019-06 SG1, Library Evolution
P1132R4 out_ptr - a scalable output pointer abstraction JeanHeyd Meneide, Todor Buyukliev, Isabella Muerte 2019-06-17 2019-06 P1132R3 Library
P1135R5 The C++20 Synchronization Library David Olsen, Olivier Giroux, JF Bastien, Detlef Vollmann, Bryce Lelbach 2019-06-17 2019-06 P1135R4 Library
P1144R4 Object relocation in terms of move plus destroy Arthur O'Dwyer 2019-06-17 2019-06 P1144R3 EWGI, LEWGI
P1152R3 Deprecating volatile JF Bastien 2019-06-15 2019-06 P1152R2 Core, Library
P1155R3 More implicit moves Arthur O'Dwyer, David Stone 2019-06-17 2019-06 P1155R2 Core
P1172R1 The Concept of Memory Allocator Mingxin Wang 2019-06-17 2019-06 P1172R0 Library Evolution, Library
P1186R2 When do you actually use <=>? Barry Revzin 2019-06-17 2019-06 P1186R1 Core
P1202R2 Asymmetric Fences David Goldblatt 2019-06-17 2019-06 P1202R1 Library Evolution
P1207R2 Movability of Single-pass Iterators Corentin Jabot 2019-06-17 2019-06 P1207R1 Library
P1208R5 Adopt source location from Library Fundamentals V3 for C++20 Corentin Jabot, Robert Douglas 2019-06-17 2019-06 P1208R4 Library
P1217R2 Out-of-thin-air, revisited, again Hans Boehm 2019-06-17 2019-06 P1217R1 SG1
P1222R2 A Standard flat_set Zach Laine 2019-06-11 2019-06 P1222R1 Library
P1223R2 find_backward Zach Laine 2019-06-13 2019-06 P1223R1 Library
P1238R1 SG16: Unicode Direction Tom Honermann, Corentin Jabot, JeanHeyd Meneide, Mark Zeren, Martinho Fernandes, Peter Bindels, Steve Downey, Zach Laine 2019-06-16 2019-06 P1238R0 WG21
P1255R4 A view of 0 or 1 elements: view::maybe Steve Downey 2019-06-17 2019-06 P1255R3 Library Evolution
P1272R2 Byteswapping for fun&&nuf Isabella Muerte 2019-06-17 2019-06 P1272R1 Core, Library
P1280R2 Integer Width Literals Isabella Muerte 2019-06-17 2019-06 P1280R1 Library Evolution
P1301R3 [[nodiscard("should have a reason")]] JeanHeyd Meneide, Isabella Muerte 2019-06-17 2019-06 P1301R2 Core
P1315R2 secure_clear Miguel Ojeda 2019-06-17 2019-06 P1315R1 Evolution
P1320R2 Allowing contract predicates on non-first declarations Ville Voutilainen 2019-06-17 2019-06 P1320R1 Evolution
P1331R1 Permitting trivial default initialization in constexpr contexts CJ Johnson 2019-06-14 2019-06 P1331R0 Core
P1355R2 Exposing a narrow contract for ceil2 Chris Kennelly 2019-06-16 2019-06 P1355R1 SG6, Library Evolution, Library
P1361R1 Integration of chrono with text formatting Victor Zverovich , Daniela Engert, Howard E. Hinnant 2019-06-14 2019-06 P1361R0 Library
P1367R1 Not All Agents Have TLS Olivier Giroux 2019-06-17 2019-06 P1367R0 SG1
P1371R1 Pattern Matching Sergei Murzin, Michael Park, David Sankel, Dan Sarginson 2019-06-17 2019-06 P1371R0 Evolution
P1385R2 A proposal to add linear algebra support to the C++ standard library Guy Davidson, Bob Steagall 2019-06-19 2019-06 P1385R1 SG6, SG14, Library Evolution
P1386R2 A Standard Audio API for C++: Motivation, Scope, and Basic Design Timur Doumler, Guy Somberg, Guy Davidson 2019-06-18 2019-06 P1386R1 SG13, Library Evolution
P1391R2 Range constructor for std::string_view Corentin Jabot 2019-06-17 2019-06 P1391R1 Library Evolution, Library
P1394R2 Range constructor for std::span Corentin Jabot, Casey Carter 2019-06-17 2019-06 P1394R1 Library
P1401R1 Narrowing contextual conversions to bool Andrzej Krzemieński 2019-06-17 2019-06 P1401R0 Evolution
P1404R1 bad_alloc is not out-of-memory! Andrzej Krzemieński, Tomasz Kamiński 2019-06-17 2019-06 P1404R0 Evolution, Library Evolution
P1406R1 Add more std::hash specializations Alexander Zaitsev, Antony Polukhin 2019-06-14 2019-06 P1406R0 LEWGI, Library Evolution, Library
P1412R0 Class Natures for Safety Critical Code: On user-declared and user-defined special member functions Peter Sommerlad 2019-06-17 2019-06 SG12, SG20
P1413R1 Deprecate std::aligned_storage and std::aligned_union CJ Johnson 2019-06-14 2019-06 P1413R0 Library Evolution, Library
P1415R1 SG19 Machine Learning Layered List Michael Wong, Vincent Reverdy, Ritwik Dubey, Richard Dosselmann, Eugenio Bargiacchi 2019-06-16 2019-06 P1415R0 SG19
P1424R1 'constexpr' feature macro concerns Antony Polukhin 2019-06-14 2019-06 P1424R0 Library
P1429R2 Contracts That Work Joshua Berne, John Lakos 2019-06-16 2019-06 P1429R1 Evolution
P1436R1 Executor properties for affinity-based execution Gordon Brown, Ruyman Reyes, Michael Wong, H. Carter Edwards, Thomas Rodgers, Mark Hoemmen 2019-06-17 2019-06 P1436R0 SG1, SG14, Library Evolution
P1450R1 Enriching type modification traits Vincent Reverdy 2019-06-17 2019-06 P1450R0 Library Evolution
P1466R2 Miscellaneous minor fixes for chrono Howard Hinnant 2019-06-17 2019-06 P1466R1 Library
P1467R1 Extended floating-point types Michał Dominiak, David Olsen 2019-06-17 2019-06 P1467R0 SG6, Evolution, Library Evolution
P1468R1 Fixed-layout floating-point type aliases Michał Dominiak, Boris Fomitchev, Sergei Nikolaev 2019-06-17 2019-06 P1468R0 SG6, Evolution, Library Evolution
P1485R1 Better keywords for the Coroutines Antony Polukhin 2019-06-14 2019-06 P1485R0 Evolution
P1522R0 Iterator Difference Type and Integer Overflow Eric Niebler 2019-06-17 2019-06 Library Evolution, Library
P1523R0 Views and Size Types Eric Niebler 2019-06-17 2019-06 Library Evolution, Library
P1525R0 One-Way execute is a Poor Basis Operation Eric Niebler, Kirk Shoop, Lewis Baker, Lee Howes 2019-06-17 2019-06 SG1, Library Evolution
P1604R1 The inline keyword is not in line with the design of modules Corentin Jabot 2019-06-17 2019-06 P1604R0 SG2, Evolution
P1609R1 C++ Should Support Just-in-Time Compilation Hal Finkel 2019-06-18 2019-06 P1609R0 EWGI
P1614R1 The Mothership Has Landed: Adding <=> to the Library Barry Revzin 2019-06-17 2019-06 P1614R0 Library
P1622R1 Mandating the Standard Library: Clause 31 - Thread support library Daniel Sunderland 2019-06-17 2019-06 P1622R0 Library
P1624R0 Resolving technical issues in parameter mapping equivalence and related problems Hubert S.K. Tong 2019-06-17 2019-06 Core
P1628R0 Unicode characters properties Corentin Jabot 2019-06-17 2019-06 SG16
P1629R0 Standard Text Encoding The Phantom Derpstorm 2019-06-17 2019-06 SG16
P1630R0 Spaceship needs a tune-up: Addressing some discovered issues with P0515 and P1185 Barry Revzin 2019-06-16 2019-06 Evolution, Core
P1633R0 Amendments to the C++20 Synchronization Library David Olsen, Olivier Giroux 2019-06-16 2019-06 SG1
P1634R0 Naming guidelines for modules Corentin Jabot 2019-06-17 2019-06 SG15
P1635R0 A Design for an Inter-Operable and Customizable Linear Algebra Library Jayesh Badwaik 2019-06-16 2019-06 SG14
P1636R0 Formatters for library types Lars Gullik Bjønnes 2019-06-14 2019-06 Library Evolution
P1638R0 basic_istream_view's iterator should not be copyable Corentin Jabot, Christopher Di Bella 2019-06-17 2019-06 Library Evolution, Library
P1639R0 Unifying source_location and contract_violation Corentin Jabot 2019-06-17 2019-06 Library Evolution, Library

Results summary: 2019 Global Developer Survey "Lite"

Over the past week, we ran our second annual global C++ developer survey, this time with questions asked by SG20.

Thank you to everyone who responded. As promised, here is a summary of the results, including aggregated highlights of common answers in the write-in responses:

CppDevSurvey-2019-04-summary.pdf

The results have now been forwarded to the C++ standards committee to help inform C++ evolution. Your feedback will be very helpful, and thank you again for your participation!

Second Annual C++ Foundation Developer Survey "Lite"

cpp_logo.pngThe Standard C++ Foundation's second annual global C++ developer survey is now open. As the name suggests, it's a one-pager:

2019 Annual C++ Developer Survey "Lite"

Please take 10 minutes or so to participate! A summary of the results, including aggregated highlights of common answers in the write-in responses, will be posted publicly here on isocpp.org and shared with the C++ standardization committee to help inform C++ evolution.

The survey closes in one week.

Thank you for participating and helping to inform our committee and community.

Report from the February 2019 ISO C++ meeting (Core Language working group)--Jason Merrill

Short and sweet.

Report from the February 2019 ISO C++ meeting (Core Language working group)

by Jason Merrill

From the article:

The February 2019 ISO C++ meeting was held in Kailua-Kona, Hawaii. As usual, Red Hat sent three developers to the meeting: I attended in the Core Language working group, Jonathan Wakely in Library, and Thomas Rodgers in SG1 (parallelism and concurrency). The meeting went smoothly, although there was significant uncertainty at the beginning where we would end up. In the end, Modules and Coroutines were accepted into the C++20 draft, so now we have our work cut out for us nailing down the remaining loose corners. Here ar highlights from the meeting...

Trip Report: C++ Standards Meeting in Kona, February 2019--Botond Ballo

Everything you need to know.

Trip Report: C++ Standards Meeting in Kona, February 2019

by Botond Ballo

From the article:

A few weeks ago I attended a meeting of the ISO C++ Standards Committee (also known as WG21) in Kona, Hawaii. This was the first committee meeting in 2019; you can find my reports on 2018’s meetings here (November 2018, San Diego), here (June 2018, Rapperswil), and here (March 2018, Jacksonville). These reports, particularly the San Diego one, provide useful context for this post...

2019-03 post-Kona mailing available

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

 

2019-03 post-Kona
N4801 WG21 pre-Kona telecon minutes Nina Dinka Ranns 2019-02-08 2019-03 WG21
N4802 WG21 2018-11 San Diego Minutes Nina Dinka Ranns 2018-11-26 2019-03 N4790 WG21
N4803 Kona 2019 LEWG Summary Titus Winters 2019-02-24 2019-03 WG21
N4805 WG21 2019-02 Kona Minutes of Meeting Nina Dinka Ranns 2019-03-10 2019-03 WG21
N4806 Working Draft, C++ Extensions for Library Fundamentals, Version 3 Thomas Köppe 2019-03-13 2019-03 N4786 WG21
N4807 Editor’s Report: C++ Extensions for Library Fundamentals, Version 3 Thomas Köppe 2019-03-13 2019-03 WG21
N4808 Working Draft, C++ Extensions for Parallelism Version 2 Jared Hoberock 2019-03-11 2019-03 N4796 WG21
N4809 Parallelism TS Editor’s Report, post-Kona mailing Jared Hoberock 2019-03-11 2019-03 WG21
N4810 Working Draft, Standard for Programming Language C++ Richard Smith 2019-03-15 2019-03 N4800 WG21
N4811 Editors' Report - Programming Languages - C++ Richard Smith 2019-03-15 2019-03 WG21
P0052R10 Generic Scope Guard and RAII Wrapper for the Standard Library Peter Sommerlad, Andrew L. Sandoval 2019-02-19 2019-03 P0052R9 Library Adopted 2019-03
P0201R5 A polymorphic value-type for C++ Jonathan Coe, Sean Parent 2019-03-11 2019-03 P0201R4 Library Evolution, Library
P0339R6 polymorphic_allocator<> as a vocabulary type Pablo Halpern, Dietmar Kühl 2019-02-22 2019-03 P0339R5 Library Adopted 2019-03
P0340R3 Making std::underlying_type SFINAE-friendly Tim Song 2019-02-21 2019-03 P0340R2 Library Adopted 2019-03
P0466R3 Layout-compatibility and Pointer-interconvertibility Traits Lisa Lippincott 2019-03-08 2019-03 P0466R2 Library
P0553R4 Bit operations Jens Maurer 2019-03-01 2019-03 P0553R3 Library
P0631R6 Math Constants Lev Minkovsky, John McFarlane 2019-02-25 2019-03 P0631R5 Library
P0645R7 Text Formatting Victor Zverovich 2019-03-09 2019-03 P0645R6 Library Evolution, Library
P0660R9 Stop Token and Joining Thread Nicolai Josuttis, Lewis Baker, Billy O’Neal, Herb Sutter, Anthony Williams 2019-03-10 2019-03 P0660R8 SG1, Library Evolution, Library
P0664R8 C++ Coroutine TS Issues Gor Nishanov 2019-02-21 2019-03 P0664R7 Core
P0738R2 I Stream, You Stream, We All Stream for istream_iterator Casey Carter 2019-02-21 2019-03 P0738R1 Library Adopted 2019-03
P0798R4 Monadic operations for std::optional Simon Brand 2019-03-11 2019-03 P0798R3 Library
P0811R3 Well-behaved interpolation for numbers and pointers S. Davis Herring 2019-02-22 2019-03 P0811R2 Library Adopted 2019-03
P0813R1 construct() shall Return the Replaced Address Nicolai Josuttis 2019-02-20 2019-03 P0813R0 Library Evolution, Library
P0881R4 A Proposal to add stacktrace library Alexey Gorgurov, Antony Polukhin 2019-01-22 2019-03 P0881R3 Core, Library
P0912R5 Merge Coroutines TS into C++20 working draft Gor Nishanov 2019-02-22 2019-03 P0912R4 WG21 Adopted 2019-03
P0920R2 Precalculated hash values in lookup Mateusz Pusz 2019-02-22 2019-03 P0920R1 Library Adopted 2019-03
P0943R2 Support C atomics in C++ Hans-J. Boehm 2019-03-10 2019-03 P0943R1 SG1, Library Evolution
P0960R3 Allow initializing aggregates from a parenthesized list of values Ville Voutilainen, Thomas Köppe 2019-02-22 2019-03 P0960R2 Evolution, Core Adopted 2019-03
P0985R4 LWG Chair post-meeting report Marshall Clow 2019-03-10 2019-03 P0985R3 WG21
P1001R2 Target Vectorization Policies from Parallelism V2 TS to C++20 Alisdair Meredith, Pablo Halpern 2019-02-22 2019-03 P1001R1 SG1, Library Adopted 2019-03
P1009R2 Array size deduction in new-expressions Timur Doumler 2019-02-22 2019-03 P1009R1 Core Adopted 2019-03
P1018R3 Evolution status after Kona 2019 Ville Voutilainen 2019-03-11 2019-03 P1018R2 WG21
P1024R3 Usability Enhancements for std::span Tristan Brindle 2019-02-22 2019-03 P1024R2 Library Adopted 2019-03
P1035R5 Input Range Adaptors Christopher Di Bella, Casey Carter, Corentin Jabot 2019-03-05 2019-03 P1035R4 Library
P1041R4 Make char16_t/char32_t string literals be UTF-16/32 R. Martinho Fernandes 2019-02-18 2019-03 P1041R3 Evolution, Core Adopted 2019-03
P1091R3 Extending structured bindings to be more like variable declarations Nicolas Lesser 2019-02-18 2019-03 P1091R2 Core Adopted 2019-03
P1099R4 Using Enum Gašper Ažman, Jonathan Müller 2019-03-10 2019-03 P1099R3 Core
P1103R3 Merging Modules Richard Smith 2019-02-22 2019-03 P1103R2 WG21 Adopted 2019-03
P1135R4 The C++20 Synchronization Library Bryce Adelstein Lelbach, Olivier Giroux, JF Bastien, Detlef Vollmann, David Olsen 2019-03-04 2019-03 P1135R3 Library
P1139R2 Address wording issues related to ISO 10646 R. Martinho Fernandes 2019-02-18 2019-03 P1139R1 SG16, Core Adopted 2019-03
P1144R3 Object relocation in terms of move plus destroy Arthur O'Dwyer 2019-03-10 2019-03 P1144R2 Library Evolution, Library
P1152R2 Deprecating volatile JF Bastien 2019-03-09 2019-03 P1152R1 Core, Library Evolution, Library
P1154R2 Type traits for structural comparison Arthur O'Dwyer, Jeff Snyder 2019-03-10 2019-03 P1154R1 Library
P1161R3 Deprecate uses of the comma operator in subscripting expressions Corentin Jabot 2019-02-22 2019-03 P1161R2 Core
P1164R1 Make create_directory() intuitive Nicolai Josuttis 2019-02-22 2019-03 P1164R0 Library Adopted 2019-03
P1185R2 <=> != == Barry Revzin 2019-02-22 2019-03 P1185R1 Evolution, Core Adopted 2019-03
P1189R0 Adding <=> to library Barry Revzin 2019-03-10 2019-03 Library Evolution
P1208R4 Adopt source location from Library Fundamentals V3 for C++20 Robert Douglas, Corentin Jabot 2019-03-11 2019-03 P1208R3 Library
P1217R1 Out-of-thin-air, revisited, again Hans-J. Boehm 2019-03-10 2019-03 P1217R0 SG1
P1219R1 Homogeneous variadic function parameters James Touton 2019-03-11 2019-03 P1219R0 Evolution
P1227R2 Signed ssize() functions, unsigned size() functions Jorg Brown 2019-02-22 2019-03 P1227R1 Library Adopted 2019-03
P1243R2 Rangify New Algorithms Dan Raviv 2019-03-09 2019-03 P1243R1 Library
P1252R2 Ranges Design Cleanup Casey Carter 2019-02-22 2019-03 P1252R1 Library Adopted 2019-03
P1255R3 A view of 0 or 1 elements: view::maybe Steve Downey 2019-03-10 2019-03 P1255R2 Library Evolution
P1257R0 Implementation experience on trying to implement concurrent data and control structures with executors Detlef Vollmann 2018-10-16 2019-03 SG1, Library Evolution
P1272R1 Byteswapping for fun&&nuf Isabella Muerte 2019-02-21 2019-03 P1272R0 Library
P1286R2 Contra CWG DR1778 Richard Smith 2019-02-18 2019-03 P1286R1 Core, Library Adopted 2019-03
P1290R2 Avoiding undefined behavior in contracts J. Daniel Garcia, Ville Voutilainen 2019-02-20 2019-03 P1290R1 Evolution, Core
P1290R3 Avoiding undefined behavior in contracts J. Daniel Garcia, Ville Voutilainen 2019-03-09 2019-03 P1290R2 Evolution, Core
P1323R2 Contract postconditions and return type deduction Hubert S.K. Tong 2019-02-20 2019-03 P1323R1 Core Adopted 2019-03
P1338R1 WG21 2018-11 San Diego Record of Discussion Nina Dinka Ranns 2018-11-26 2019-03 P1338R0 WG21
P1339R1 Disallowing the friending of names in namespace std CJ Johnson 2019-03-04 2019-03 P1339R0 Library Evolution, Library
P1344R1 Pre/Post vs. Enspects/Exsures Nathan Myers 2019-02-20 2019-03 P1344R0 Core
P1354R0 SG7 Guidelines for Review of Proposals Chandler Carruth 2018-11-08 2019-03 SG7
P1357R1 Traits for [Un]bounded Arrays Walter E. Brown, Glen J. Fernandes 2019-02-22 2019-03 P1357R0 Library Adopted 2019-03
P1358R0 Core "ready" Issues William M. Miller 2019-02-22 2019-03 WG21 Adopted 2019-03
P1359R0 Core "tentatively ready" Issues William M. Miller 2019-02-21 2019-03 WG21 Adopted 2019-03
P1368R1 Multiplication and division of fixed-point numbers S. Davis Herring 2019-03-05 2019-03 P1368R0 SG6
P1370R1 Generic numerical algorithm development with(out) numeric_limits Mark Hoemmen, Damien Lebrun-Grandie 2019-03-10 2019-03 P1370R0 SG6, Library Evolution Incubator
P1375R1 More Constrained: Apples or Oranges? On the road to semantic constraint matching Hubert S.K. Tong 2019-03-11 2019-03 P1375R0 Evolution
P1381R1 Reference capture of structured bindings Nicolas Lesser 2019-02-22 2019-03 P1381R0 Evolution Adopted 2019-03
P1382R1 volatile_load<T> and volatile_store<T> JF Bastien, Paul McKenney, Jeffrey Yasskin 2019-03-10 2019-03 P1382R0 SG1
P1385R1 A proposal to add linear algebra support to the C++ standard library Guy Davidson, Bob Steagall 2019-03-10 2019-03 P1385R0 SG14, Library Evolution
P1386R1 A Standard Audio API for C++: Motivation, Scope, and Basic Design Guy Somberg, Guy Davidson, Timur Doumler 2019-03-11 2019-03 P1386R0 SG13, Library Evolution
P1390R1 Reflection TS NB comment resolutions: summary and rationale Matúš Chochlík, Axel Naumann, and David Sankel 2019-02-22 2019-03 P1390R0 SG7, Evolution, Core, Library Evolution, Library Adopted 2019-03
P1391R1 Range constructor for std::string_view Corentin Jabot 2019-03-08 2019-03 P1391R0 Library
P1394R1 Range constructor for std::span Corentin Jabot, Casey Carter 2019-03-11 2019-03 P1394R0 Library
P1407R1 Tell Programmers About Signed Integer Overflow Behavior Scott Schurr 2019-03-08 2019-03 P1407R0 SG12
P1423R1 char8_t backward compatibility remediation Tom Honermann 2019-03-09 2019-03 P1423R0 Library
P1429R1 Contracts That Work Joshua Berne, John Lakos 2019-03-08 2019-03 P1429R0 Evolution
P1430R1 First-class symmetric coroutines in C++ Mihail Mihaylov, Vassil Vassilev 2019-02-08 2019-03 P1430R0 Evolution
P1438R1 A Rational Number Library for C++ Bill Seymour 2019-03-10 2019-03 P1438R0 SG6
P1439R1 Charset Transcoding, Transformation, and Transliteration Steve Downey 2019-03-10 2019-03 P1439R0 SG16
P1441R1 Are modules fast? Rene Rivera 2019-03-06 2019-03 P1441R0 WG21
P1452R1 On the non-uniform semantics of return-type-requirements Hubert S.K. Tong 2019-03-11 2019-03 P1452R0 Evolution
P1458R1 Mandating the Standard Library: Clause 16 - Language support library Marshall Clow 2019-02-20 2019-03 P1458R0 Library Adopted 2019-03
P1459R1 Mandating the Standard Library: Clause 18 - Diagnostics library Marshall Clow 2019-02-20 2019-03 P1459R0 Library Adopted 2019-03
P1462R1 Mandating the Standard Library: Clause 20 - Strings library Marshall Clow 2019-02-20 2019-03 P1462R0 Library Adopted 2019-03
P1463R1 Mandating the Standard Library: Clause 21 - Containers library Marshall Clow 2019-02-22 2019-03 P1463R0 Library Adopted 2019-03
P1464R1 Mandating the Standard Library: Clause 22 - Iterators library Marshall Clow 2019-02-20 2019-03 P1464R0 Library Adopted 2019-03
P1466R1 Miscellaneous minor fixes for chrono Howard E. Hinnant 2019-03-10 2019-03 P1466R0 Library
P1477R1 Coroutines TS Simplifications Lewis Baker 2019-02-12 2019-03 P1477R0 Evolution
P1478R0 Byte-wise atomic memcpy Hans-J. Boehm 2019-01-20 2019-03 SG1
P1478R1 Byte-wise atomic memcpy Hans-J. Boehm 2019-03-10 2019-03 P1478R0 SG1
P1482R0 Modules Feedback Bruno Cardoso Lopes, Michael Spencer, JF Bastien 2019-02-08 2019-03 SG15, Evolution
P1484R1 A uniform and predefined mapping from modules to filenames Peter Bindels 2019-03-11 2019-03 P1484R0 SG15
P1485R0 Better keywords for the Coroutines TS Antony Polukhin 2019-02-17 2019-03 Evolution
P1490R0 Contract-Related Issues Andrzej Krzemieński 2018-02-13 2019-03 Evolution
P1491R0 Don’t add to the signed/unsigned mess Bjarne Stroustrup 2019-02-14 2019-03 Evolution, Library Evolution
P1492R0 Coroutines: Language and Implementation Impact Richard Smith, Daveed Vandevoorde, Geoffrey Romer, Gor Nishanov, Nathan Sidwell, Iain Sandoe, Lewis Baker 2019-02-19 2019-03 WG21
P1493R0 Coroutines: Use-cases and Trade-offs Geoffrey Romer, Gor Nishanov, Lewis Baker, Mihail Mihailov 2019-02-19 2019-03 WG21
P1494R0 Partial program correctness S. Davis Herring 2019-03-07 2019-03 Evolution, Core, Library Evolution
P1498R0 Constrained Internal Linkage for Modules Chandler Carruth, Nathan Sidwell, Richard Smith 2019-02-20 2019-03 Evolution
P1498R1 Constrained Internal Linkage for Modules Chandler Carruth, Nathan Sidwell, Richard Smith 2019-02-23 2019-03 P1498R0 Evolution
P1502R0 Standard library header units for C++20 Richard Smith 2019-03-15 2019-03 Evolution, Library Evolution
P1505R0 Mandating the Standard Library: Clause 30 - Atomic operations library Daniel Sunderland 2019-03-10 2019-03 Library
P1517R0 Contract Requirements for Iterative High-Assurance Systems Ryan McDougall 2019-03-01 2019-03 Evolution
P1518R0 Stop overconstraining allocators in container deduction guides Arthur O'Dwyer, Mike Spertus 2019-03-10 2019-03 Library Evolution
P1520R0 Response to response to “Fibers under the magnifying glass” Gor Nishanov 2019-03-08 2019-03 SG1
P1601R0 Recommendations for Specifying “Hidden Friends” Walter E. Brown, Daniel Sunderland 2019-03-10 2019-03 Library Evolution, Library
P1602R0 Make Me A Module Nathan Sidwell 2019-03-01 2019-03 Evolution
P1604R0 The inline keyword is not in line with the design of modules. Corentin Jabot 2019-01-21 2019-03 Evolution
P1606R0 Requirements for Contract Roles Joshua Berne 2019-03-08 2019-03 Evolution
P1607R0 Minimizing Contracts Joshua Berne, Jeff Snyder 2019-03-08 2019-03 Evolution
P1609R0 C++ Should Support Just-in-Time Compilation Hal Finkel 2019-03-10 2019-03 Evolution Incubator
P1610R0 Rename await_resume() to await_result() Mathias Stearn 2019-03-10 2019-03 Library Evolution
P1611R0 WG21 2019-02 Kona Record of Discussion Nina Dinka Ranns 2019-03-10 2019-03 WG21
P1612R0 Relocate Endian's Specification Walter E. Brown, Arthur O’Dwyer 2019-03-10 2019-03 Library Evolution, Library
P1614R0 The Mothership Has Landed: Adding <=> to the Library Barry Revzin 2019-03-11 2019-03 Library
P1616R0 Using unconstrained template template parameters with constrained templates Mike Spertus, Roland Bock 2019-03-11 2019-03 Evolution
P1619R0 Functions for Testing Boundary Conditions on Integer Operations Lisa Lippincott 2019-03-10 2019-03 SG6, Library Evolution
P1622R0 Mandating the Standard Library: Clause 31 - Thread support library Daniel Sunderland 2019-03-10 2019-03 Library
P1625R0 Contracts: why the house is not on fire (i.e. why the status quo is tolerable) Ville Voutilainen 2019-03-11 2019-03 WG21

Trip report: February 2019 ISO C++ committee meeting, Kona, Hawai’i--Timur Doumler

Another report.

Trip report: February 2019 ISO C++ committee meeting, Kona, Hawai’i

by Timur Doumler

From the article:

What better way to start my new blog than to publish a trip report from the most recent C++ committee meeting on the wonderful Big Island of Hawai’i?

If you are looking for an incredibly detailed report of everything that happened, please instead head to this report by Bryce and others, and also see Herb Sutter’s and cor3ntin’s reports. I won’t try to provide this breadth of coverage, and instead focus on a few areas that are particularly relevant for me and the community that I am proxying here:

  • Making C++ simpler, more uniform, and easier to teach;
  • Providing developers with better tools;
  • Improving support for low-latency and real-time(-ish) programming,
  • 2D Graphics, Audio, and other forms of I/O and human-machine interaction.

That being said, let’s start with the big news: we voted both Coroutines and Modules into C++20!

Kona: Trip Report -- Guy Davidson

The committee met in Kona, Hawai'i recently; here's a trip report.

Telescopes, matrices and audio: Kona trip report

by Guy Davidson

From the article:

As we stopped and parked among the telescopes, wandering from building to building, we realised that there was probably plenty of C++ code executing behind the doors of the observatories. We are never far from our trade.