ISO/ IEC JTC1/SC22/WG21 - Papers 2018


WG21 Number Title Author Document Date Mailing Date Previous Version Subgroup Disposition
SD-1 2018 PL22.16/WG21 document list Hal Finkel 2018-02-12 2018-02
2018-02 pre-Jacksonville
N4715 2018-11 San Diego Meeting Information Marshall Clow 2018-02-01 2018-02 WG21
N4716 PL22.16/WG21 draft agenda: 12-17 March 2018, Jacksonville, FL, US John Spicer 2018-01-12 2018-02 WG21
N4717 WG21 telecon meeting: Pre-Jacksonville Herb Sutter 2018-01-10 2018-02 WG21
N4718 WG21 telecon meeting: Modules TS publication Herb Sutter 2018-01-18 2018-02 WG21
N4719 Programming Languages — Extensions to C++ for Modules Gabriel Dos Reis 2018-01-29 2018-02 WG21
N4720 Working Draft, Extensions to C++ for Modules Gabriel Dos Reis 2018-01-29 2018-02 N4689 WG21
N4721 Editor’s Report for the Module TS Gabriel Dos Reis 2018-02-12 2018-02 WG21
N4722 Responses to SC22 N5250, ISO/IEC PDTS 21544, C++ Extensions for Modules Barry Hedquist 2018-02-04 2018-02 WG21
N4723 Working Draft, C++ Extensions for Coroutines Gor Nishanov 2018-02-11 2018-02 N4680 WG21
N4724 Editor's report for the Coroutines TS Gor Nishanov 2018-02-06 2018-02 WG21
N4725 Working Draft, Technical Specification for C++ Extensions for Parallelism Version 2 Jared Hoberock 2018-02-12 2018-02 N4706 WG21
N4726 Parallelism TS Editor’s Report Jared Hoberock 2018-02-12 2018-02 WG21
N4727 Working Draft, Standard for Programming Language C++ Richard Smith 2018-02-12 2018-02 N4713 WG21
N4728 Editors' Report -- Programming Languages – C++ Richard Smith, Dawn Perchik, Thomas Köppe 2018-02-12 2018-02 WG21
P0009R5 Polymorphic Multidimensional Array Reference H. Carter Edwards, Daniel Sunderland, David Hollman, Christian Trott, Mauro Bianco, Ben Sander, Athanasios Iliopoulos, John Michopoulos 2018-02-10 2018-02 P0009R4 Library
P0019r6 Atomic View H. Carter Edwards, Hans Boehm, Olivier Giroux, James Reus 2018-02-11 2018-02 P0019R5 Library
P0051R3 C++ generic overload function Vicente J. Botet Escribá 2018-02-12 2018-02 P0051R2 Library Evolution
P0057r8 Working Draft, C++ Extensions for Coroutines Gor Nishanov 2018-02-11 2018-02 P0057r7 WG21
P0122r6 span: bounds-safe views for sequences of objects Neil MacIntosh 2018-02-11 2018-02 P0122R5 Library
P0194R5 Static reflection Matúš Chochlík, Axel Naumann, David Sankel 2018-02-11 2018-02 P0194R4 Core, Library
P0201R3 A polymorphic value-type for C++ Jonathan Coe, Sean Parent 2018-02-12 2018-02 P0201R2 Library
P0214r8 Data-Parallel Vector Types & Operations Matthias Kretz 2018-02-12 2018-02 P0214r7 Library
P0267r7 A Proposal to Add 2D Graphics Rendering and Display to C++ Michael B. McLaughlin, Herb Sutter, Jason Zink, Guy Davidson 2018-02-10 2018-02 P0267r6 Library Evolution
P0275R3 A Proposal to add Classes and Functions Required for Dynamic Library Load Antony Polukhin 2018-02-01 2018-02 P0275R2 Library Evolution
P0323R5 std::expected Vicente Botet, JF Bastien 2018-02-08 2018-02 P0323R4 Library
P0332R2 Relaxed Incomplete Multidimensional Array Type Declaration H. Carter Edwards, Daniel Sunderland, Christian Trott, David Hollman, Mauro Bianco, Athanasios Iliopoulos, John Michopoulos 2018-02-10 2018-02 P0332R1 Library Evolution
P0338R3 C++ generic factories Vicente J. Botet Escribá 2018-02-12 2018-02 P0338R2 Library Evolution
P0355R5 Extending <chrono> to Calendars and Time Zones Howard E. Hinnant, Tomasz Kamiński 2018-02-11 2018-02 P0355R4 Library
P0443R5 A Unified Executors Proposal for C++ Jared Hoberock, Michael Garland, Chris Kohlhoff, Chris Mysen, Carter Edwards, Gordon Brown 2018-02-12 2018-02 P0443R4 SG1, Library Evolution
P0458R1 Checking for Existence of an Element in Associative Containers Mikhail Maltsev 2018-02-06 2018-02 P0458R0 Library
P0466R1 Layout-compatibility and Pointer-interconvertibility Traits Lisa Lippincott 2018-02-12 2018-02 P0466R0 Core, Library
P0479R4 Proposed wording for likely and unlikely attributes Clay Trychta 2018-02-07 2018-02 P0479R3 SG14, Core
P0482R1 char8_t: A type for UTF-8 characters and strings Tom Honermann 2018-02-12 2018-02 P0482R0 Evolution, Library Evolution
P0501R3 C++ Module TS Issues List Gabriel Dos Reis 2018-01-30 2018-02 P0501R2 WG21
P0514R3 Efficient concurrent waiting for C++20 Olivier Giroux 2018-02-10 2018-02 P0514R2 SG1
P0528R1 The Curious Case of Padding Bits, Featuring Atomic Compare-and-Exchange JF Bastien, Michael Spencer 2018-02-11 2018-02 P0528R0 SG1, Evolution, Core
P0533R2 constexpr for <cmath> and <cstdlib> Edward J. Rosten, Oliver J. Rosten 2018-02-10 2018-02 P0533R1 SG6, Library Evolution
P0539R3 A Proposal to add wide_int Template Class Igor Klevanets, Antony Polukhin 2018-01-31 2018-02 P0539R2 SG6, Library Evolution
P0542R3 Support for contract based programming in C++ G. Dos Reis, J. D. Garcia, J. Lakos, A. Meredith, N. Myers, B. Stroustrup 2018-02-12 2018-02 P0542R2 Evolution, Core
P0546R2 Span - foundation for the future H. Carter Edwards, Daniel Sunderland 2018-02-11 2018-02 P0546R1 Library Evolution
P0549R3 Adjuncts to std::hash Walter E. Brown 2018-02-03 2018-02 P0549R2 Library Evolution, Library
P0551R2 Thou Shalt Not Specialize std Function Templates! Walter E. Brown 2018-02-03 2018-02 P0551R1 Library
P0566R4 Proposed Wording for Concurrent Data Structures: Hazard Pointer and Read-Copy-Update (RCU) Michael Wong, Maged M. Michael, Paul McKenney, Geoffrey Romer, Andrew Hunter, Arthur O'Dwyer, David S. Hollman, JF Bastien, Hans Boehm, David Goldblatt 2018-02-11 2018-02 P0566R3 SG1, SG14, Library Evolution, Library
P0581R1 Standard Library Modules Marshall Clow, Beman Dawes, Gabriel Dos Reis, Stephan T. Lavavej, Billy O’Neal, Bjarne Stroustrup, Jonathan Wakely 2018-02-11 2018-02 P0581R0 Library Evolution
P0593R2 Implicit creation of objects for low-level object manipulation Richard Smith 2018-02-11 2018-02 P0593R1 SG12
P0608R1 A sane variant converting constructor Zhihao Yuan 2017-12-30 2018-02 P0608R0 Library Evolution, Library
P0631R2 Math Constants Lev Minkovsky 2018-02-06 2018-02 P0631R1 SG6, Library Evolution
P0634R2 Down with typename! Nina Ranns, Daveed Vandevoorde 2018-02-10 2018-02 P0634R1 Core
P0645R1 Text Formatting Victor Zverovich 2017-11-10 2018-02 P0645R0 Library Evolution
P0650R2 C++ Monadic interface Vicente J. Botet Escribá 2018-02-11 2018-02 P0650R1 Library Evolution
P0666R1 Revised Latches and Barriers for C++20 Olivier Giroux 2018-02-11 2018-02 P0666R0 SG1
P0668R2 Revising the C++ memory model Hans J. Boehm, Olivier Giroux, Viktor Vafeiades 2018-01-12 2018-02 P0668R1 SG1
P0670R2 Static reflection of functions Matúš Chochlík, Axel Naumann, David Sankel 2017-11-08 2018-02 P0670R1 Evolution, Library Evolution
P0671R1 Parametric Functions Axel Naumann 2018-02-12 2018-02 P0671R0 Evolution
P0684R2 C++ Stability, Velocity, and Deployment Plans Titus Winters 2018-02-10 2018-02 P0684R1 Evolution, Library Evolution
P0690R1 Tearable Atomics JF Bastien, Billy Robert O'Neal III, Andrew Hunter 2018-02-10 2018-02 P0690R0 SG1
P0701R2 Back to the std2::future Part II Bryce Adelstein Lelbach, Michał Dominiak, Hartmut Kaiser 2017-11-15 2018-02 P0701R1 SG1
P0707R3 Metaclasses: Generative C++ Herb Sutter 2018-02-11 2018-02 P0707R2 SG7, Evolution
P0713R1 Identifying Module Source Daveed Vandevoorde 2018-02-08 2018-02 P0713R0 Evolution, Core
P0732R0 Class Types in Non-Type Template Parameters Jeff Snyder 2018-02-11 2018-02 Evolution
P0736R0 Nameless parameters and unutterable specializations Hubert S.K. Tong 2018-02-12 2018-02 Evolution
P0745R0 Concepts in-place syntax Herb Sutter 2018-02-11 2018-02 Evolution
P0750R1 Consume JF Bastien, Paul E. McKenney 2018-02-11 2018-02 P0750R0 SG1
P0761R2 Executors Design Document Jared Hoberock, Michael Garland, Chris Kohlhoff, Chris Mysen, Carter Edwards, Gordon Brown, Michael Wong 2018-02-12 2018-02 P0761R1 SG1, Library Evolution
P0784R1 Standard containers and constexpr Louis Dionne, Richard Smith, Nina Ranns, Daveed Vandevoorde 2018-02-11 2018-02 P0784R0 Evolution, Library Evolution
P0786R1 ValuedOrError and ValueOrNone types Vicente J. Botet Escribá 2018-02-12 2018-02 P0786R0 Library Evolution
P0788R1 Standard Library Specification in a Concepts and Contracts World Walter E. Brown 2018-02-03 2018-02 P0788R0 Library
P0789R2 Range Adaptors and Utilities Eric Niebler 2018-02-11 2018-02 P0789R1 Library
P0792R1 function_ref: a non-owning reference to a Callable Vittorio Romeo 2017-11-26 2018-02 P0792R0 Library Evolution
P0796R1 Supporting Heterogeneous & Distributed Computing Through Affinity Gordon Brown, Ruyman Reyes, Michael Wong, H. Carter Edwards, Thomas Rodgers, Mark Hoemmen 2018-02-12 2018-02 P0796R0 SG1, SG14, Library Evolution, Library
P0797R1 Handling Concurrent Exceptions with Executors Matti Rintala, Michael Wong, Carter Edwards, Patrice Roy, Gordon Brown, Mark Hoemmen 2018-02-12 2018-02 P0797R0 SG1, SG14, Library Evolution, Library
P0805R1 Comparing Containers Marshall Clow 2018-02-10 2018-02 P0805R0 Library
P0811R1 Well-behaved interpolation for numbers and pointers S. Davis Herring 2018-02-09 2018-02 P0811R0 SG6, Library Evolution
P0814R2 hash_combine() Again Nicolai Josuttis 2018-02-12 2018-02 P0814R1 Library Evolution, Library
P0820R2 Feedback on P0214 Tim Shen 2018-02-06 2018-02 P0820R1 SG1, Library Evolution
P0824R1 Summary of SG14 discussion on <system_error> Arthur O'Dwyer, Charley Bay, Odin Holmes, Michael Wong, Niall Douglas 2018-02-05 2018-02 P0824R0 Library Evolution
P0825R1 A friendlier tuple get Agustín Bergé 2018-02-10 2018-02 P0825R0 Library Evolution
P0828R0 Elastic Integers John McFarlane 2018-02-12 2018-02 SG6, SG14
P0829R1 Freestanding Proposal Ben Craig 2017-10-14 2018-02 P0829R0 SG14, Library Evolution
P0836R0 Introduce Parallelism to the Ranges TS Gordon Brown, Christopher Di Bella, Michael Haidl, Toomas Remmelg, Ruyman Reyes, Michel Steuwer, Michael Wong 2018-02-12 2018-02 SG1, SG9, SG14, Library Evolution
P0843R1 fixed_capacity_vector Gonzalo Brito Gadeschi 2018-02-06 2018-02 P0843R0 Library Evolution
P0847R0 Deducing this Gašper Ažman, Simon Brand, Ben Deane, Barry Revzin 2018-02-12 2018-02 Evolution
P0856R0 Restrict Access Property for mdspan and span David S. Hollman, H. Carter Edwards, Christian Trott 2018-02-12 2018-02 Library Evolution
P0860R0 Atomic Access Property for span and mdspan H. Carter Edwards, Christian Trott, Daniel Sunderland 2018-02-10 2018-02 SG1, Library Evolution
P0863R0 Fixing the partial_order comparison algorithm Jeff Snyder 2018-02-12 2018-02 Library Evolution
P0868R1 Selected RCU Litmus Tests Paul E. McKenney, Alan Stern, Andrew Hunter, Jade Alglave, Luc Maranget 2017-11-20 2018-02 P0868R0 SG1
P0873R1 A plea for a consistent, terse and intuitive declaration syntax Corentin jabot 2017-11-27 2018-02 P0873R0 SG8, Evolution
P0876R0 fibers without scheduler Oliver Kowalke 2018-02-11 2018-02 SG1
P0877R0 A proposal for modular macros Bruno Cardoso Lopes 2018-02-11 2018-02 Evolution
P0878R0 Subobjects copy elision Antony Polukhin 2018-01-08 2018-02 Evolution
P0879R0 Constexpr for swap and swap related functions Antony Polukhin 2017-12-29 2018-02 Library
P0880R0 Numbers interaction Igor Klevanets, Antony Polukhin 2018-01-31 2018-02 SG6, Library Evolution
P0881R0 A Proposal to add stack trace library Alexey Gorgurov, Antony Polukhin 2018-01-23 2018-02 Library Evolution
P0882R0 User-defined Literals for std::filesystem::path Yonggang Li 2017-12-30 2018-02 Library Evolution
P0883R0 Fixing Atomic Initialization Nicolai Josuttis 2018-02-12 2018-02 SG1, Library Evolution, Library
P0884R0 Extending the noexcept Policy Nicolai Josuttis 2018-02-10 2018-02 Library Evolution
P0886R0 The assume aligned attribute Timur Doumler 2018-02-12 2018-02 Evolution, Core
P0887R0 The identity metafunction Timur Doumler 2018-02-12 2018-02 Library Evolution, Library
P0888R0 C++ Standard Library Issues to be moved in Jacksonville Marshall Clow 2018-02-12 2018-02 WG21
P0889R0 Ultimate copy elision Antony Polukhin 2018-01-08 2018-02 Evolution
P0891R0 Let strong_order Truly Be a Customization Point! Gašper Ažman 2018-02-10 2018-02 Library
P0892R0 explicit(bool) Barry Revzin, Stephan T. Lavavej 2017-12-11 2018-02 Evolution
P0893R0 Chaining Comparisons Barry Revzin, Herb Sutter 2018-01-14 2018-02 Evolution
P0895R0 Renaming cell<> to latest<> Nicolai Josuttis, Tony van Eerd 2018-01-31 2018-02 Library Evolution, Library
P0896R0 Merging the Ranges TS Eric Niebler 2018-02-12 2018-02 WG21
P0897R0 Supporting offsetof for All Classes Andrey Semashev 2018-01-05 2018-02 Evolution, Library Evolution
P0898R0 Standard Library Concepts Casey Carter 2018-02-12 2018-02 Library Evolution, Library
P0899R0 LWG 3016 is Not a Defect Casey Carter 2018-01-30 2018-02 Library
P0900R0 An Ontology for Properties of mdspan David S. Hollman 2018-02-12 2018-02 Library Evolution
P0901R0 Size feedback in operator new Andrew Hunter, Chris Kennelly 2018-02-05 2018-02 Evolution
P0902R0 Move-only iterators Andrew Hunter 2018-02-05 2018-02 Library Evolution
P0903R0 Define basic_string_view(nullptr) and basic_string(nullptr) Ashley Hedberg 2018-02-02 2018-02 Library Evolution, Library
P0904R0 A strawman Future API Lee Howes, Andrii Grynenko, Jay Feldblum 2018-02-11 2018-02 SG1
P0905R0 Symmetry for spaceship Tomasz Kamiński, Herb Sutter, Richard Smith 2018-01-31 2018-02 Evolution, Library Evolution
P0906R0 Improvement suggestions for the Modules TS Jens Maurer 2018-02-11 2018-02 Evolution
P0907R0 Signed Integers are Two’s Complement JF Bastien 2018-02-09 2018-02 SG12. Evolution
P0908R0 Offsetof for Pointers to Members Eddie Kohler 2018-02-11 2018-02 Evolution
P0909R0 Module TS Supports Legacy Integration Steve Downey 2018-02-11 2018-02 Core, Library Evolution
P0911R0 Rebase the Coroutines TS onto the C++17 Standard Gor Nishanov 2018-02-03 2018-02 Core, Library
P0912R0 Merge Coroutines TS into C++20 working draft Gor Nishanov 2018-02-06 2018-02 WG21
P0913R0 Add symmetric coroutine control transfer Gor Nishanov 2018-02-08 2018-02 Evolution
P0914R0 Add parameter preview to coroutine promise constructor Gor Nishanov 2018-02-08 2018-02 Evolution
P0915R0 Concept-constrained auto Vittorio Romeo, John Lakos 2018-02-08 2018-02 Evolution
P0916R0 Naming implementation-defined simd_abi tag types Matthias Kretz 2018-02-12 2018-02 Library Evolution
P0917R0 Making operator?: overloadable Matthias Kretz 2018-02-12 2018-02 Evolution
P0918R0 More simd<> Operations Tim Shen 2018-02-08 2018-02 SG1, Library Evolution
P0919R0 Heterogeneous lookup for unordered containers Mateusz Pusz 2018-02-08 2018-02 Library Evolution, Library
P0921R0 Standard Library Compatibility Promises Titus Winters 2018-02-01 2018-02 Evolution, Library Evolution
P0922R0 LEWG wishlist for EWG Titus Winters 2018-02-10 2018-02 Evolution
P0923R0 Modules: Dependent ADL Nathan Sidwell 2018-02-08 2018-02 Evolution
P0924R0 Modules: Context-Sensitive Keyword Nathan Sidwell 2018-02-09 2018-02 Evolution
P0925R0 Modules: Unqualified Using Declarations Nathan Sidwell 2018-02-08 2018-02 Evolution
P0927R0 Towards A (Lazy) Forwarding Mechanism for C++ James Dennett, Geoff Romer 2018­-02­-08 2018-02 Evolution
P0928R0 Mitigating Speculation Attacks in C++ Geoff Romer, Chandler Carruth 2018-02-09 2018-02 Evolution, Library Evolution
P0929R0 Checking for abstract class types Jens Maurer 2018-02-08 2018-02 Evolution, Core
P0930R0 Semifying Awaitables Lee Howes, Andrii Grynenko, Jay Feldblum 2018-02-11 2018-02 SG1
P0931R0 Structured bindings with polymorphic lambas Aaryaman Sagar 2018-08-14 2018-02 Evolution
P0932R0 Tightening the constraints on std::function Aaryaman Sagar 2018-02-07 2018-02 Library Evolution
P0934R0 A Modest Proposal: Fixing ADL Herb Sutter 2018-02-08 2018-02 Evolution
P0935R0 Eradicating unnecessarily explicit default constructors from the standard library Tim Song 2018-02-12 2018-02 Library
P0936R0 Bind Returned/Initialized Objects to the Lifetime of Parameters Richard Smith, Nicolai Josuttis 2018-02-12 2018-02 Evolution, Core
P0937R0 SG5: Transactional Memory (TM) Meeting Minutes 2017/10/23-2018/1/29 Michael Wong 2018-02-12 2018-02 SG5
P0938R0 SG14: Low Latency Meeting Minutes 2017/12/13-2018/01/10 Michael Wong 2018-02-12 2018-02 SG14
P0939R0 Direction for ISO C++ B. Dawes, H. Hinnant, B. Stroustrup, D. Vandevoorde, M. Wong 2018-02-10 2018-02 WG21
P0940R0 Concurrency TS is growing: Concurrent Utilities and Data Structures Michael Wong, Olivier Giroux 2018-02-12 2018-02 SG1, Library Evolution, Library
P0941R0 Integrating feature-test macros into the C++ WD Clark Nelson 2018-02-09 2018-02 SG10, Evolution, Library Evolution
P0942R0 Introducing a <smart_ptr> header Jens Maurer 2018-02-10 2018-02 Library Evolution, Library
P0943R0 Support C atomics in C++ Hans J. Boehm 2018-02-11 2018-02 SG1, Library Evolution
P0944R0 Contiguous Ranges Casey Carter 2018-02-11 2018-02 Library Evolution
P0945R0 Generalizing alias declarations Richard Smith 2018-02-10 2018-02 Evolution
P0946R0 Towards consistency between <=> and other comparison operators Richard Smith 2018-02-10 2018-02 Evolution
P0947R0 Another take on Modules Richard Smith 2018-02-12 2018-02 Evolution
P0949R0 Adding support for type-based metaprogramming to the standard library Peter Dimov 2018-02-11 2018-02 Library Evolution
P0952R0 A new specification for std::generate_canonical Thomas Köppe, Davis Herring 2018-02-12 2018-02 SG6, Library
P0953R0 constexpr reflexpr Matúš Chochlík, Axel Naumann, David Sankel 2017-02-11 2018-02 SG7
P0954R0 What do we want to do with reflection? Bjarne Stroustrup 2018-02-11 2018-02 SG7, Evolution
P0955R0 Modules and macros Bjarne Stroustrup 2018-02-11 2018-02 Evolution
P0956R0 Answers to concept syntax suggestions Bjarne Stroustrup 2018-02-11 2018-02 Evolution
P0957R0 PFA: A Generic, Extendable and Efficient Solution for Polymorphic Programming Mingxin Wang 2018-02-12 2018-02 SG7, SG9, Evolution, Library Evolution
P0958R0 Networking TS changes to support proposed Executors TS Christopher Kohlhoff 2018-02-11 2018-02 SG1
P0959R0 A Proposal for a Universally Unique Identifier Library Marius Bancila 2018-02-12 2018-02 Library Evolution
P0960R0 Allow initializing aggregates from a parenthesized list of values Ville Voutilainen 2018-02-12 2018-02 Evolution
P0961R0 Relaxing the structured bindings customization point finding rules Ville Voutilainen 2018-02-11 2018-02 Evolution
P0962R0 Relaxing the range-for loop customization point finding rules Ville Voutilainen 2018-02-11 2018-02 Evolution
P0963R0 Structured binding declaration as a condition Zhihao Yuan 2018-02-05 2018-02 Evolution
P0964R0 Finding the right set of traits for simd<T> Matthias Kretz 2018-02-12 2018-02 SG1, Library Evolution
P0965R0 Initializers of objects with automatic and dynamic storage duration have funny inconsistencies Ville Voutilainen 2018-02-12 2018-02 Evolution
P0966R0 string::reserve Should Not Shrink Mark Zeren, Andrew Luo 2018-02-08 2018-02 Library Evolution, Library