Document number | P0985R4 |
Date | 2019-03-10 |
Project | Programming Language C++, WG21 |
Reply-to | Marshall Clow <lwgchair@gmail.com> |
This is meant to be an ongoing paper, with a series of reports, capturing the information provided by the LWG chair during the plenary session at the previous meeting.
We started the week with about 40 papers scheduled, and about 16 more that were not scheduled. We reviewed ~35 of them, leaving many for the next meeting. The other groups (mostly LEWG) sent us many more papers during the week, so we still have more than a week's work to accomplish before C++20 is done.
We will be having bi-weekly teleconferences between now and Cologne, to cut down on the amount of work we have to accomplish face-to-face.
span
; we adopted LEWGs recommendation to change all the signed sizes/indexes to unsigned, and added more constraints on the conversion from a container to a span
. The same paper also a free function ssize
, which returns the size of a container as a signed type.flat_map
proposal.function_ref
proposal.We reviewed on the order of 45 papers this week. We did some wording triage in small groups, and that worked quite well. We'll be doing more of that in the future. About 25 of those papers were approved and voted on in plenary session on Saturday.
operator+
in strings consistent.std::is_constant_evaluated
.flat_map
proposal.fixed_capacity_vector
proposal.mdspan
proposal.constexpr INVOKE
In August, LWG met in Batavia, IL to try to reduce the backlog of work that was facing us for C++20. There were about 18 people in attendance.
Since this was not an official WG21 meeting, we could not approve any motions for incorporation into C++20. However, we approved a bunch of papers (and issues) to be put on the motions page in San Diego.
We reviewed a large chunk of the Ranges proposal (about 150 pages of the 220 page paper). Casey will revise the paper, and we have continued the review on the reflector. (See postings titled "Paper working review: D0896").
There were two fairly large new papers at this meeting. These were both clarification/cleanup papers, rather than proposing new features, and they were both reviewed favorably. Tim Song's paper is titled "Cleaning up Clause 20". Nevin Liber's paper is titled "Explicitly Implicifying explicit Constructors".
operator>> (basic_istream&, CharT*)
(LWG 2499)variant
and optional
should propagate copy/move trivialityvisit<R>
: Explicit Return Type for visit<chrono>
zero()
, min()
, and max()
should be noexceptstd::vector
constexprstd::pointer_traits
apply()
for synchronized_value<T>
unwrap_ref_decay
and unwrap_reference
basic_stringbuf
’s Buffer (now combined with P0407)flat_map
variant
converting constructoroperator<=>
on the C++ Standard Librarystd::assume_aligned
LWG (again) entered the week with a large backlog of papers; somewhere around 55. We have dealt with more papers than we accumulated this week, but we still have a large backlog. We reviewed 39 papers, adopting 26 of them. (Five of those are being moved by CWG).
To deal with this backlog of work, we will be holding an additional, LWG-only meeting in Battavia, IL the week of August 20-24. Thanks to Walter Brown for organizing this.
mdspan
<smart_ptr>
headerLWG entered the week with a large backlog of papers; somewhere around 55. We may have exited the week with a larger backlog than we started, since other groups have sent us many papers during the week. Our throughput was limited this week because we spent the first two days of the meeting on two (very large) papers; P0214 (Data-parallelism) and P0355 (calendar support). Fortunately, we completed our review, the authors turned the changes around, and we moved both of them.
<chrono>
for C++20.<span>
to C++20.<version>
to C++20; a place to put implementation-specific configuration and versioning.expected<T>
polymorphic_value
In plenary, I asked for a show of hands for people who would be willing to attend an extra "LWG-only" weeklong session in the late summer. About 14 people raised their hands. Assuming that we can find a venue (and a sufficient number commit to attend), we will have an extra meeting this summer.
We have been processing issues on the reflector; mostly with prioritization, but more and more, we're trying to solve them there. I expect this to continue. Of course, all resolutions will be proposed and voted on in formal meetings.