WG21 2018-03 Jacksonville Record of Discussion

ISO/IEC JTC1 SC22 WG21 P1015 — 2018-04-02

Patrice Roy, Patrice.Roy@USherbrooke.ca

March 12 - March 17, 2018 - Jacksonville, FL, USA

Chair: John Spicer

1. Opening activities (Monday 9:00)

1.1 Opening comments, welcome from host (PL22.16)

Spicer welcomes everyone. Hedquist greets attendees and thanks sponsors.

1.2 Meeting guidelines (PL22.16)

Every participant is responsible for understanding and abiding by the INCITS Antitrust Guidelines and Patent Policy and the [ISO Code of Conduct][isococ].

1.3 Membership, voting rights, and procedures for the meeting (PL22.16)

The chair requests that prospective PL22.16 members inform the chair (Spicer) or vice-chair (Finkel) that they are present.

Finkel explains the attendance sheet rules and requests people adding themselves print their names clearly.

Finkel explains new rules to manage the attribution of document numbers for papers.

1.4 Introductions

Representatives from the following countries:

Canada Finland Germany Spain Switzerland UK US

France has members but no NB representative

Poland has members but is here as an observer

1.5 Agenda review and approval (PL22.16 motion)

Agenda is in a revision of N4716, posted on the Wiki.

Dawes moved to adopt the agenda, Carruth seconded.

Approved by unanimous consent (for both WG21 and .16 polls).

The WG and SG chairs must arrange for any proposals to be written up in the form of a motion, and made available by 8:00 PM Friday.

1.6 Editor's reports, approval of working drafts

Document Editor's Report Prospective WD
C++20 Standard N4728 N4727
Coroutines TS N4724 N4723
Networking TS N4712 N4711
Parallelism v2 TS N4726 N4725

Approved by unanimous consent.

1.7 Approval of the minutes of the previous meetings (PL22.16 motion)

Meeting Minutes
WG21 Albuquerque N4709
PL22.16 Albuquerque N4710
WG21 Modules telecon N4729
WG21 pre-Jacksonville administrative telecon N4730

Carruth moved to accept the PL22.16 Albuquerque minutes, Clow seconded. Approved by unanimous consent.

WG21 minutes approved by unanimous consent.

2. Liaison reports, and WG21 study group reports (see pre-meeting WG21 telecon minutes)

Already summarized in the pre-meeting minutes

3. WG progress reports and work plans for the week (Core, Evolution, Library, Library Evolution)

Already summarized in the pre-meeting minutes

4. New business requiring action by the committee

Miller states that issues, tentatively ready or not, have not been presented in paper form as usual due to an important number of pre-meeting teleconferences, particularly for modules. D0968 contains the list of tentatively ready issues and is attached to the Core Wiki.

5. Organize working groups and study groups, establish working procedures

(Clarify rooms available for evening sessions)

6. WG and SG sessions

The WG and SG chairs must arrange for any proposals to be written up in the form of a motion, and made available by 8:00 PM Friday.

7. Review of the meeting (Saturday 8:30 AM)

WG and SG status and progress reports. Presentation and discussion of proposals to be considered for consensus adoption by full WG21.

Spicer invites SG chairs to make their reports

SG5: Transactional memory (Wong)

Wong: continues to meet every two weeks

SG6: Numerics (Crowl)

Met Thursday all day and Friday afternoon.

Major work:

Passed on to LEWG:

Passed on to LEWG with modifications:

Returned back LEWG with comments but without resolution:

Discussed but no resolution:

Abducted by [L]EWG:

Did not get to:

Crowl: we had a long list of papers we did not get to, and are hoping to get to at the next meeting

SG7: Compile-Time Programming (Carruth)

Carruth: we explored constexpr reflexpr

Carruth: we had a progress report from Herb Sutter on metaclasses

Carruth: we heard about Bjarne's vision

Carruth: the reflection TS is getting nearer

SG10: Feature test (Nelson)

Nelson: nothing to report

SG12: Undefined and unspecified behavior (Dos Reis)

Crowl: most of SG12 was in SG6 when we discussed the two's complement paper. SG12 did not have its own meeting

Dos Reis: we cancelled the joint meeting with WG23 who could not make it

Dos Reis: we met with SG6 Wednesday all day and Thursday afternoon

SG14: Games & low latency (Wong)

Wong: meets every month. Works on containers and utilities useful for the low-latency people

Q: meeting at GDC?

Wong: we wanted to but will not be able to this time

SG15: Tooling (Winters)

Winters: we had the inaugural meeting last night

Winters: we made a list of things we'd like to do and set an informal ten-year target for our efforts

SG1: Concurrency (Giroux)

Giroux: 28-34 people. 38 discussions. 7 votes towards IS of C++20

Giroux: 25 papers + many late minute papers

Giroux: we still managed to adjourn early

Giroux: we (will) have Parallelism TS v2, including Taks blocks, simd, "vec" execution policy

Giroux: voted toward C++20 IS and routed to various groups:

Giroux: algorithm policy extensions, next futures, networking all depend on executors

Giroux: next async depends on next futures

Giroux: coroutines maybe depend on executors (unclear)

Giroux: for executors, the request for authors to work towards the C++20 IS lead to a divided polls

Giroux: strong poll results for the fact that executors must merge into the IS before networking

Giroux: polled for unanimous consent that coroutines do not depend on executors: objection noted

Giroux: one option is that executors and networking both merge into C++20 IS

Giroux: another option is that IS of C++23 gets executors, networking, more algorithm policies, etc.

Giroux: SG1 ships big stuff every two releases, and fixes and filled gaps in the others. C++17 was big for SG1

Rohmer: (missed)

Orr: we do have a networking TS published...

Winters: it is not our policy to ensure compatibility for people who use the TS

Orr: I still suggest we think about it

Josuttis: do you want guidance from this group about whether we want executors in C++20 or do you want to decide on your own?

Giroux: I want people to discuss between meetings. I'm not looking for a poll in this room

Rodgers: there's little likelihood that changes to executors will be big

Garçia: is there a chance that we need to put only a small part of executors in C++20 IS to make networking work? It's an important component

Giroux: I understand. This is already 'executors lite'; if we cut more from the design, we won't be comfortable

Adlestein Lelbach: I agree that the set of changes to apply to the networking TS to work with executors is small. We haven't explored the way the networking TS would look without executors. It would be a bigger task

Clow: I have been talking with Jonathan Wakely. He thinks shipping executors with C++20 would be a good idea, and is the editor of the networking TS

Evolution (Voutilainen)

Voutilainen: P0782R0 was reviewed in an evening session

Voutilainen: P0745R0 we also examined Herb Sutter's new proposed notation for concepts, and will consider it for C++20, but will decide in Rapperswil

Voutilainen: for coroutines, D0973R0 will be reexamined in Rapperswil. P0913R0 and P0914R0 will be moved here for the coroutines TS

Voutilainen: we reviewed "another take on modules" and expect further work on that

Dos Reis: after discussion with EWG, Richard Smith and I discussed similarities and differences, and observed significant commonalities

Dos Reis: we have a plan for a paper in the post-mailing where we will propose (a) to adapt wording from the modules TS that supports programs that meet both models and move it to the IS, and (b) adjust the modules TS to better support headers and support the global module (what happens before a module's declaration)

Dos Reis: this will allow a tooling migration to a world without header files

Dos Reis: we will be working on that for Rapperswil

Dos Reis: the goal is to have something usable and solid for C++20

Smith: for the end of the next meeting, we hope to offer something common for C++20

Voutilainen: we will support modular legacy headers

Dos Reis: lookup issues will be explorer with Spicer and others. We plan to give regular status updates

Voutilainen: we also investigate ways to avoid code breakage with new keywords

Voutilainen: we had a discussion on side-effects in pre- and post-conditions in contracts, and look for guidance in UB situations

Voutilainen: reflection and associated facilities were reviewed and approved, with one paper (P0424) withdrawn and in part integrated in another. This has been forwared to CWG

Voutilainen: standard compatibility promises have been examined (P0912E0). EWG supports turning it into a Standing Document to be added to the Library Introduction clause

Voutilainen: we reviewed the LEWG wishlist for EWG. Among other things, we are looking for non-macro solutions to traditionally-macro-related problems

Voutilainen: fixing ADL was reviewed. Work ongoing

Voutilainen: we moved a DR for for-loop traversal of sequences previously unpleasant to traverse

Voutilainen: we also relaxed Structures Binding rules

Voutilainen: Structured Bindings are now based on access rules, not limited to public members

Voutilainen: P0931R0 and P0963R0 were rejected

Voutilainen: comparison operators and compatibility with C was explored. We are going forward with this and will revisit in Rapperswil

Voutilainen: symmetry for <=> was approved

Voutilainen: char8_t was reviewed. No consensus for a TS, we are targeting an IS

Voutilainen: intializing aggregates from parentheses was reviewed but not accepted yet

Voutilainen: signed integers and two's complement was reviewed. It's not ready for CWG yet

Voutilainen: feature macro was not reviewed. It will return in Rapperswil and targets C++20

Voutilainen: mitigating speculation attacks was reviewed. Further work expected

Voutilainen: explicit(bool) approved. Likewise for "checking for abstract class types"

Voutilainen: we have a lot of unreviewed papers too. We focus on the major features, which are concepts, modules and coroutines

Library Evolution (Winters)

Winters: we approved allowing conditional noexcept for wrapper types (P0884)

Winters: we forwarded many papers to LWG for the C++20 IS, including

Winters: we forwarded the following to LWG for the static reflection TS

Winters: we forwarded the following to LWG for the coroutines TS

Winters: we discussed but did not forward

Winters: for 2D graphics, we have decisions to make

Sutter: please think about this before Rapperswil

Sutter: the direction group wishes something. If this proposal is not what we want, please bring something, a competing proposal, for consideration

Winters: we also discussed but did not forward

Winters: we might have discussions between sessions to get progress on the smaller papers, through the reflectors and otherwise

Core (Miller)

Miller: CWG has been meeting all week

Miller: we mostly looked at proposals for C++20. We processed all of those forwarded to us, some more than once, and are moving eight of those for the Working Draft today

Miller: three some had shared CWG and LWG wording, were approved by CWG and were forwarded to LWG

Miller: five will be reexamined in the future

Miller: we reviewed the Static reflection TS

Miller: we reviewed changes to the coroutines TS. Two will be moved by CWG today, one was referred to LWG

Miller: we did some Issues processing as the workload was more manageable than in previous meetings

Miller: we have draft resolutions to be moved in Rapperswil. Seven "ready" from this meeting, and six "tentatively ready" from 2018-02-26 telconference

Miller: we expect additional teleconferences before Rapperswil

Miller: we managed to get to the high-priority issues that were piling up. Some were given lower priority due to language evolution having made them less prone to damage than before

Miller: we assigned twelve issues for drafting

Miller: we demoted two issues to lower priority

Miller: we decided on NAD after extensive discussion in one case

Miller: in one case, we need guidance from EWG and will contact them

Miller: in two other cases, further investigation is required

Miller: we will need to prioritize new issues, and plan to do that right after the plenary today

Miller: two teleconferences are planned before Rapperswil: 2018-04-09 and 2018-05-07

CWG Motions

Sutter reminds members of the rules for transcripts and other ways of contributing to social media, e.g. not while the plenary session is ongoing

Sutter describes the voting procedures, including voting rights

Miller: the tentatively ready issues would normally show up in the pre-meeting mailing, but we spent so much time on modules that it slipped my mind and I forgot to put that document in the mailing

Miller: those we move to approve are those that were reviewed by almost the full group, and we feel pretty confident about. Should someone oppose their adoption, we will push it back to Rapperswil

CWG Motions

Motion 1

Move to accept as Defect Reports all issues except 2237 in P0968R0 (Core Language Working Group "tentatively ready" Issues for the March, 2018 (Jacksonville) meeting) and apply all the proposed resolutions (including the one for 2237) to the C++ working paper.

Miller explains the feature that would be removed in issue 2237, which is moved but not as a defect report

Approved by unanimous consent

Motion 2

Move to apply the changes in P0840R2 (Language support for empty objects) to the C++ working paper.

Approved by unanimous consent

Motion 3

Move to accept as a Defect Report and apply the changes in P0962R1 (Relaxing the range-for loop customization point finding rules) to the C++ working paper.

Approved by unanimous consent

Motion 4

Move to accept as a Defect Report and apply the changes in P0969R0 (Allow structured bindings to accessible members) to the C++ working paper.

Approved by unanimous consent

Motion 5

Move to accept as a Defect Report and apply the changes in P0961R1 (Relaxing the structured bindings customization point finding rules) to the C++ working paper.

Approved by unanimous consent

Motion 6

Move to apply the changes in P0634R3 (Down with typename!) to the C++ working paper.

Carruth: there was a discussion requesting a paper, there was a paper...

Voutilainen: this could clash with a direction EWG aims to take, but we could probably adapt

Dos Reis: adding it, then removing it after would be confusing for tool vendors

Alisdair: I'm not surprised this is coming ahead

Sutter: in ABQ plenary, we said we'd like a paper but did not get to it. A Working Draft is a Working Draft; we can look at conflicting papers in Rapperswil

Josuttis: what's the other paper?

Carruth: 0945

Miller: we discussed it in CWG. The item that interests EWG conflicts with a small item in this paper, which could be reverted if the other feature passes with EWG. We think this paper is worthwhile and does not prevent EWG work

Miller: currently all aliases deal with types. EWG examines other types of aliases, which might restore the need for typename in some aliases

Sutter: reminder, we don't do technical discussion in plenary. Chandler: are you Ok with this motion going forward even if we remove a bit in Rapperswil?

Voutilainen: we could discuss this first thing on Monday in Rapperswil

Carruth: I can live with it if the committee wants to go ahead

Dos Reis: there are other objections

Josuttis: we should vote

Objection to unanimous consent

Favor Opposed Abstain
31 6 14

Motion passed.

Motion 7

Move to apply the changes in P0780R2 (Allow pack expansion in lambda init-capture) to the C++ working paper.

Approved by unanimous consent

Motion 8

Move to apply the changes in P0479R5 (Proposed wording for likely and unlikely attributes (Revision 5)) to the C++ working paper.

Approved by unanimous consent

Motion 9

Move to apply the changes in P0905R1 (Symmetry for spaceship) to the C++ working paper.

Adam: I raised a technical objection in EWG and want this noted

Objection to unanimous consent

Favor Opposed Abstain
34 2 17

Motion passed.

Motion 10

Move to apply the changes in P0914R1 (Add parameter preview to coroutine promise constructor) to the Coroutines TS working paper.

Approved by unanimous consent

Motion 11

Move to apply the changes in P0911R1 (Rebase the Coroutines TS onto the C++17 Standard) to the Coroutines TS working paper.

Approved by unanimous consent

Library (Clow)

Clow: we had a big week

Clow: we have about 55 papers, and did not come close to doing them all

Clow: we finished the week with more papers than we had at the beginning

Clow: we had two big ones: the simd paper for the Parallelism TS and the Calendar paper

Clow: we managed to do some issues processing on Wednesday evening

Clow: we have new TSs, span made it at long last

Clow: we reviewed but did not adopt expected and polymorphic value types

Clow: we'd like for someone to do a LWG week-long meeting during summer. Who would come? (approximately 14 hands)

Josuttis: please put it on the East coast to make it easier for those coming from Europe

(break starts at 10:12AM and ends at 10:30AM)

LWG motions

Parallelism 2 TS

Motion 1

Move to apply to the Parallelism 2 TS working paper the proposed wording in P0214R9 (Data-Parallel Vector Types & Operations).

Approved by unanimous consent

Motion 2

Move that we appoint an editing committee of Adlestein Lelbach, Matthias Kretz, Alisdair Meredith, and Marshall Clow, to approve the correctness of the Parallelism 2 TS working draft as modified by the motions approved at this meeting, and to direct the Convener to transmit the approved updated working draft for PTDS.

Approved by unanimous consent

Reflection TS

Motion 3

Move to direct the Convener to request a New Work Item for a Technical Specification on "C++ Extensions for Reflection" and create a working draft with [ P0194R6 "Static reflection" ] as its initial content

Maurer: who will be the project editor?

Sutter: probably David Sankel or Axel Naumann. To be determined, one would probably be primary and the other one would be backup

Approved by unanimous consent

Coroutines TS

Motion 4

Move to apply to the Coroutines TS working paper the proposed wording in P0913R1 (Add symmetric coroutine control transfer).

Approved by unanimous consent

Networking TS

Motion 5

Move to apply to the Networking TS working paper the proposed resolutions of issues 3002, 3010 and 3020 in P0888R0 (C++ Standard Library Issues to be moved in Jacksonville).

Approved by unanimous consent

Library Fundamentals TS

Motion 6

Move to direct the Convener to request a New Work Item for a Technical Specification on "C++ Extensions for Library Fundamentals, Version 3" and create a working draft with P0996R1 modifying Library Fundamentals Version 2 N4600

Approved by unanimous consent


Motion 7

Move to apply to the C++ working paper the proposed resolutions of all of the issues except 3002, 3010 and 3020 in P0888R0 (C++ Standard Library Issues to be moved in Jacksonville).

Approved by unanimous consent

Motion 8

Move to apply to the C++ working paper the proposed wording in P1003R0 (C++ Standard Library Issues Resolved Directly In Jacksonville).

Approved by unanimous consent

Working Draft

Motion 9

Move to apply to the C++ working paper the proposed wording in P0754R2 ().

Garçia: the paper does not say which symbols will be obtained from the header. Intentional?

Clow: it's meant to be implementation-specific, tell you which library you have, which version, etc.

Clow: the current guidance is to include ...

Voutilainen explains the intent

Sutter: did the fact that we had considered?

Winters: yes. Nobody likes

Objection to unanimous consent

Favor Opposed Abstain
45 2 5

Motion passed.

Motion 10

Move to apply to the C++ working paper the proposed wording in P0809R0 (Comparing Unordered Containers). This resolves LWG#2831

Approved by unanimous consent

Motion 11

Move to apply to the C++ working paper the proposed wording in P0355R7 (Extending chrono to Calendars and Time Zones)

Voutilainen: this is the best library proposal ever (applause!)

Maurer: how was the pointer to the IANA timezone database resolved?

Hinnant: there is a link to the database in normative wording

Approved by unanimous consent (applause!)

Motion 12

Move to apply to the C++ working paper the proposed wording in P0966R1 (string::reserve Should Not Shrink).

Adam: was it considered to make this a Defect Report for C++17

Clow: no

Approved by unanimous consent

Motion 13

Move to apply to the C++ working paper the proposed wording in P0551R3 (Thou Shalt Not Specialize std Function Templates!).

Orr: what might this break?

Brown: it should not break well-formed programs. This formalizes the fact that some practices are improper by making them unspecified

Brown: the one place in the standard where we must take pointers to standard functions is in iostreams. We introduced a special term of Art for this

Objection to unanimous consent

Favor Opposed Abstain
39 2 13

Motion passed.

Motion 14

Move to apply to the C++ working paper the proposed wording in P0753R2 (Manipulators for C++ Synchronized Buffered Ostream).

Approved by unanimous consent

Motion 15

Move to apply to the C++ working paper the proposed wording in P0122R7 ().

Carruth: this introduces a new type, and I would like LEWG to review it

Objection to unanimous consent

Favor Opposed Abstain
36 1 18

Motion passed.

Motion 16

Move to apply to the C++ working paper the proposed wording in P0858R0 (Constexpr iterator requirements).

Clow: this was discussed on Saturday in Albuquerque, and we decided to move it in Jacksonville

Approved by unanimous consent

8. Closing activities (Saturday 10:53 AM)

8.1 PL22.16 motions, if any


8.2 Issues delayed until today


9. Plans for the future (PL22.16)

9.1 Next and following meetings


Sutter: we have a high-school student with us this week (applause!)

Sutter: we have had an evening session on Unicode, which has lead to the creation of SG16: Unicode (Tom Honermann)

Herring: does 16 mean UTF-16? (laughs!)

Winters: thank you for finding experts to work on this

Voutilainen: did you discuss this with Evolution Chairs?

Sutter: I did with the Library Evolution Chair. Does this affect the language?

Voutilainen: perhaps

Sutter: I will be more careful in the future

Sutter: Beman Dawes is retiring as of this meeting. We want to recognize his contribution to C++

Stroustrup: without Beman Dawes, the STL would not have passed, and the STL saved C++

(standing ovation for Beman Dawes)

Sutter: we're about half-way through C++20. We tend to do nine-year cycles: 1989-1998, then 2002-2011 (we overflowed a bit), leading to C++11 which is a success story

Sutter: with C++20, we're nearing the end of the nine-year period that started with C++11. We have shipped a lot in that time span

Sutter presents a time-line of the meetings up until 2020, which shows the committee trying to merge big TSs for Rapperswil in order to meet C++20

Sutter: we are aiming to be feature-complete in Kona, at meeting 2019.1

Sutter: we hope for Library features to land at worst in San Diego, 2018.3

Maurer: regarding the DIS ballot, I understand we do an FDIS ballot if there's a technical issue

Sutter: we send the DIS, if it's all Ok (except for comments), we're done. If there's a technical comment, we go to a shorter FDIS

Maurer: can we reject the technical comment and forego the FDIS process?

Sutter: only if there's no No vote

Voutilainen: we do not ignore comments

Voutilainen: any proposal going to Core after Kona will be sent without a specific shipping vehicle. It will be up to Core to decide at that point, and they will be sent with that message

Orr: is Library happy with the extra time?

Clow: we never have enough time, but more time makes it better

Adam: we saw a similar slide in Toronto. Can I assume 2020.2 to be the first meeting of C++23?

Sutter: that's what I think

Winters: going back to Library Evolution, there's never enough time. Remember that San Diego is the cut-off moment

Niebler: I think you mean "try to merge language features" in 2019.1

Sutter: the sooner the better

Van Eerd: new language features probably affect Library. Assume they do

Sutter: if you disagree with the schedule, say so. We are looking for common agreement

Stroustrup: make sure we have a written trace of this

Clow: make a paper out of this

Sutter: will do

Sutter: in Albuquerque, we said we would be more transparent about the process from evolution to wording, which is why we're doing this

Sutter: the Chair reports will now be in the mailings. If there are objections, we would like to get them early

Sutter: we got through plenary without technical objections. We thank you for that

Sutter presents a tentative list of major proposal / TSs and what they depend on, for short/ medium-term planning

Dos Reis signals a need to update the document before publishing, due to recent changes on modules

Sutter suggests looking at what we did in 2002-2011 and 2011-2020 to evaluate if we're shipping less or more... We're shipping significantly more

Spertus: the plan to ship more existed also before C++11

Stroustrup: not everything that ships is useful. I'm getting preoccupied with TSs, they seem unreliable and difficult to use portably

Herring: it seems that we have a large number, but it's hard to compete with things like auto and variadic templates...

Sutter: to me, shipping the TS is an implementation detail. Looking only at the IS, we're getting complaints that we mostly ship small features... But...

Sutter thanks Thomas Köppe for his list of features

Sutter compares 'small' features in C++11 and 'small' features since, to show the list is significant. We did ship a lot of small stuff since

Honermann: removal of POD is missing

Voutilainen: who considers tuple a small feature?

Sutter: send me an email, I'll correct this

Sutter: 'medium' features are lists of about the same size

Sutter: the 'big' features list seems to be getting more important for C++20 that it was for C++11. We're doing well!

Sutter makes a plea for TSs as a working vehicle

Voutilainen: do we plan a poll to see if the committee agrees with the shipping plan

Poll taken. Unanimous consent

Sommerlad: I will be your host in Rapperswil (applause!)

Sommerlad: about hotel rooms, two hotels closed since our last meeting

Sommerlad: we need your names for badges

Sommerlad: we're taking an evening away from evening sessions for an even in the castle. If there are people who can provide additional sponsorship for this, it will be appreciated. Registration includes options for dinner, and information about spouses and family should they come too

Sommerlad: there is a logistics issue with an Ironman competition, conflicting with our meeting for hotel rooms. Detailed information online

Van Eerd: the meeting is right besides the train station, so public transit is a reasonable option

Sommerlad: we will have an evening talk on Wednesday night, for our students and customers

Sutter: the November meeting will be in San Diego

Clow: not much to say. Information is online, there's public transit

Sutter: the dates for the 2019 meetings are tentative

Orr: for Belfast, we are looking for sponsors

9.2 Mailings

Deadline for papers is 14:00 UTC.

Brown: I want to move to thank the host >applause<.

Hedquist: I want to thank Jens Maurer for his logistics support, as well as the C++ Foundation

Brown: I would also like us to thank the following :

Maurer: thanks to Patrice Roy for stepping in as secretary

Wong presents slides titled "To TS or not to TS: that is the question"

Wong: the intent is not to have a discussion. We plan an evening session and a paper for Rapperswil

Wong: we recommend

Wong presents a long list of questions (approximately 17-18 at a glance) to ask when proposing a TS

Wong presents a proposal for Direction Group advisory. A poll should be taken before taking the direction of a TS, and the key questions should be answered first

Wong: the DG plans to examine each planned TS and offer non-binding advisory in the direction of IS, TS or SG. This might be set in a continuum

Maurer: the evening session in Rapperswil will be on Wednesday

10. Adjournment (PL22.16 motion)

Adam Martin moved to adjourn. Marshal Clow seconded.

Plenary concludes at 12:01 PM

11. Attendance

The column "WG21" designates official PL22.16 or WG21 status ("P", "A", "E", "M")

The column "PL22.16" indicates organizations eligible to vote by "V", and advisory membership by "A".

PL22.16 members

Company / Organization NB Representative WG21 PL22.16
AMD Siu Chi Chan A
AMD Tony Tye A
AMD Alexandru Voicu A
Amazon Louis Dionne P V
Amazon John McFarlane A
Apple Alex Christensen A
Apple Bruno Lopes A
Apple Tim Northover A
Argonne National Lab Hal Finkel P V
Bloomberg John Lakos P V
Bloomberg UK Dietmar Kühl A
Bloomberg UK Alisdair Meredith A
Bloomberg David Sankel A
Bloomberg Frank Birbacher
Bloomberg Jeffrey Mendeksohn
Bloomberg Vittorio Romeo
Bloomberg Georg Rudoy
Brown Walter E. Brown E
Cisco Systems Lars Gullik Bjønnes P V
Dinkumware Ltd P.J. Plauger P V
Dinkumware Ltd Tana Plauger A
EPAM Systems Inc Mateusz Pusz P V
Edison Design Group John Spicer P V
Edison Design Group Daveed Vandevoorde A
Edison Design Group Jens Maurer A
Edison Design Group William M. Miller A
Facebook Lee Howes A V
Facebook Maged Michael A
Facebook Eric Niebler A
Facebook David Goldblatt
Facebook Nathan Sidwell
Facebook Victor Zverovich
FlightSafety International Billy Baker P V
Google Chandler Carruth P V
Google Hans Boehm A
Google James Dennett A
Google Geoffrey Romer A
Google UK Richard Smith A
Google Titus Winters A
Google Ashley Hedberg
Google Andrew Hunter
Google Chris Kennelly
Google Thomas Koeppe
Google Chris Mysen
Google Tim Shen
GrammaTech Inc, Aaron Ballman P V
GreenWireSoft Juan Alday P V
IBM Paul E. McKenney P V
Intel Clark Nelson P V
Intel Pablo Halpern A
Intel Erich Keane A
Intel Axel Wells A
LTK Engineering Alan Talbot P V
Linden Research, Inc. Nat Goodspeed P V
Los Alamos National Laboratory S. Davis Herring A
Microsoft Jonathan Caves P V
Microsoft Casey Carter A
Microsoft Stephan Lavavej A
Microsoft Gor Nishanov A
Microsoft Andrew Pardoe A
Microsoft Gabriel Dos Reis A
Microsoft Herb Sutter A
MongoDB Adam Martin P V
MongoDB Jason Carey A
Morgan Stanley Bjarne Stroustrup P V
NVidia Bryce Adelstein-Lelbach
NVidia Michael Garland A
NVidia Olivier Giroux A
NVidia Jared Hoberock A
Oak Ridge National Laboratory Graham Lopez A
Ocient Nevin Liber P V
Oracle Paolo Carlini P V
Perennial Barry Hedquist P V
Perennial Lawrence Crowl A
Perennial Beman G. Dawes A
Plum Hall Thomas Plum P V
Programming Research Group Christof Meerwald A
Qualcomm Marshall Clow P V
Red Hat Jason Merrill P V
Red Hat Torvald Riegel A
Red Hat Thomas Rodgers
Ripple Labs Howard E. Hinnant P V
Ripple Labs Stephen Schurr A
Saks & Associates Benjamin Saks P
Sandia National Labs Daniel Sunderland P V
Sandia National Labs Mark Hoemmen
Sandia National Labs David Hollman
Schonfeld Tools LLC Wesley Maness P V
Seymour William Seymour P V
Stellar Science Kelly Walker P V
Symantec Mike Spertus P V
Synopsys Thierry Lavoie P V
Synopsys Tom Honermann A
Synopsys Michael Price A
University of Akron Andrew Sutton P V
VMware Inc Mark Zeren P V

Other WG21 members

Company / Organization NB Representative WG21
BDS BG Vasil Vasilev M
CA Bryan St, Amour M
Apple CA JF Bastien M
Canada Seneca CA Chris Szarwinski M
Christie Digital CA Tony Van Eerd M
Codeplay CA Michael Wong M
IBM CA Shuo Feng Liu M
IBM CA Hubert Tong M
Mozilla CA Botond Ballo M
Christie Digital CA Tony Van Eerd M
University of Windsor CA Paul Preney M
Université de Sherbrooke CA Patrice Roy M
CERN CH Axel Naumann M
HSR CH Peter Sommerlad M
Vollmann Engineering CH Detlef Vollmann M
DE Fabio Fracassi M
DE Nicolai Josuttis M
GSI DE Matthias Kretz M
University Carlos III ES J. Daniel García M
CryptoTec FI Mikael Kilpeläinen M
Plum Hall FI Ville Voutilainen A
UK Roger Orr M
ARM UK Will Deacon M
Jetbrains UK Timur Doumler M
PDT Partners UK Jeff Snyder M
UK Dinka Ranns M
Nokia PL Michał Dominiak M

Participating non-members

Company / Organization NB Representative
Nicolas Lesser
Faisal Vali
Gevorg Voskanyan
Michael Young
Blizzard James Touton
DePaul University Zhihao Yuan
Jump Trading Barry Revzin
KEWB Computing Bob Steagall
Maystreet Nathan Myers
National Instruments Ben Craig
Nokia Vicente J. Botet Escriba
Paris Observatory Vincent Reverdy
RKR Capital Robert Douglas
Sony Computer Entertainment Michael Spencer
Tanium Lisa Lippincott
think-cell Tony Lewis
Xilinx Ronan Keryell