Doc No: SC22/WG21/N2681 PL22.16/08-0191 Date: 2008-06-30 Project: JTC1.22.32 Reply to: Robert Klarer IBM Canada, Ltd. klarer@ca.ibm.com

Minutes of PL22.16 Meeting No. 48, June 8-15, 2008

1. Opening activities

Clamage called the meeting to order at 09:00 (UTC+2) on Monday, June 8, 2008

1.1 Opening comments

Jean-Paul Rigault described the arrangements and facilities for the meeting.

1.2 Introductions

Clamage had the attendees introduce themselves.

1.3 Meeting guidelines (Anti-Trust)

Clamage reviewed the patent disclosure rules.

1.4 Membership, voting rights, and procedures for the meeting

Nelson reviewed membership rules. Nelson then circulated the attendance list and membership list. Clamage reviewed voting rules and reviewed procedures for the meeting.

1.5 Agenda review and approval

Clamage presented the agenda (document PL22.16/08-0121 = WG21/N2611).

Motion to approve the agenda:

Mover: Hedquist
Seconder: Stoughton
WG favor oppose abstain
PL22.16 unanimous consent
WG21 7 0 0

1.6 Distribution of position papers, WG progress reports, WG work plans for the week, and other documents that were not distributed before the meeting.

Each of the Working Group chairs presented their plans for the coming week.

Core Working Group (CWG)

Library Working Group (LWG)

Evolution Working Group (EWG)

1.7 Approval of the minutes of the previous meeting

Motion to approve the minutes (document PL22.16/08-0102 = WG21/N2592)

Mover: Hedwick
Seconder: Klarer

P. J. Plauger observed that it's unclear, in subsection 10.1 of document N2592, why Library Working Group Motion 2 did not carry. Accordingly, he proposed a friendly amendment to the motion to approve the minutes.

Amendment: Add the following text to the account of Library Working Group Motion 2 in the minutes.

Because there was no clear consensus among participating WG21 member nations, the convenor ruled that this motion did not carry. Poll results among WG21 voting members was:
WG favor oppose abstain
WG21 2 2 1

Approved by unanimous consent as amended.

1.8 Report on the WG21 Monday meeting

Sutter reported that seven countries are represented at this meeting; all seven have voting status.

As head of the UK delegation, Glassborow made a declaration on behalf of the BSI. The main points of this declaration were:

  1. it is the position of the BSI that, if C++0x specifies concepts as a core language facility, the C++ Standard Library must be modified to exploit this facility
  2. the BSI believes that the specification of concepts -- especially as they are applied to the C++ Standard Library -- needs time to mature, as the C++ community gains experience with the implementation and use of concepts
  3. the BSI intends to vote "No" on any C++0x FCD ballot that contains concepts and that is issued within the next two years; their feeling is that the C++ committee needs to give themselves two more years to refine the document.

Much discussion ensued.

1.9 Liaison reports

WG14 Liaison

Plauger reported that the Special Math IS for C is going to final ballot and that the C++ committee should take corresponding actions. As well, Plauger reported that the C committee agreed to publish a threading model based on the C++ model.

Nelson reported on an issue that was raised by WG14 with respect to the threading model. In the current model, given a struct with two chars beside each other, two different threads can access these chars separately without causing a data race. There is concern that this inhibits certain optimizations, including the combining of stores. There was at least some discussion of allowing the programmer to control the granularity of memory location through the use of a pragma or something similar.

Kosnick asked whether there was any interest in standardizing the atomics. Nelson answered that the memory model and atomics were presented to WG14 in one paper. There was no controversy concerning the atomics.

POSIX Liaison

Stoughton reported that the group will be meeting next week in Redding. The goal of the meeting is to prepare a document outline. There was no liaison statement to make at this meeting because the group had not met since the last C++ meeting.

Other Working Group: Vulnerabilities (OWGV) Liaison

Plum reported that, at the next SC22 plenary, this group may become a regular WG. Plum also reported that OWGV is making good progress, and that an editing meeting will be conducted in "a month or so" to refine the draft document.

1.10 Editor's report and WP approval

Becker reported that document 08-0098 = WG21/N2588 has all of the edits that were approved at Bellevue. A later revision, PL22.16/08-0116 = WG21/N2606 differs from N2588 only in that it contains some editorial changes.

Meredith noted that this document contains dangling references, as expected.

Motion to accept the working paper

Mover: Paterno
Seconder: Widman
Approved by unanimous consent.

1.11 New business requiring actions by the committee

2. Organize subgroups, establish working procedures.

We have three subgroups: Core, Library, and Evolution. There will be a subgroup of Evolution to deal with issues relating to concurrency.

The committee broke into subgroups at 10:30 (GMT+10).

3. WG sessions (Core, Library, Performance, Evolution).

4. WG sessions continue.

5. WG sessions continue.

6. WG sessions continue.

7. General session.

7.1 WG status and progress reports.

Core Working Group

Adamczyk reviewed the CWG formal motions (see below).

Library Working Group

Hinnant reviewed the LWG formal motions (see below).

Future meetings:

Sutter proposed the following revised timetable for publication of the standard. According to this timetable, a Committee Draft will be issued for ballot in September 2008, and a Final Committee Draft will be issued for ballot in October 2009.

Date Location Activity
June 2008 Sofia Antipolis complete features
Sept 2008 San Francisco complete features
ship CD
4 months (3 months for ballot + 1 month for buffer)
Mar(?) 2009 TBD complete features
resolve comments
Jul(?) 2009 Frankfurt complete features
resolve comments
Oct(?) 2009 TBD resolve comments
ship FCD
5 months (4 ballot + 1 buffer)
2010-A TBD resolve comments
2010-B TBD resolve comments
2010-C TBD resolve comments
ship FDIS
>= 6 months (2 ballot + >=4 publication)

8. WG sessions continue

9. WG sessions continue

10. Review of the meeting

Clamage observed that, according to Robert's Rules, motions need not be moved and seconded, because they have been forwarded to the group by a subcommittee.

10.1 Formal motions, including DRs to be resolved.

Core Working Group

Motion 1. Move WG21/N2659 "Thread-Local Storage" into the C++0X Working Paper.

WG favor oppose abstain
PL22.16 unanimous consent

Motion 2. Move WG21/N2656 "Core issue 654 wording" into the C++0X Working Paper.

WG favor oppose abstain
PL22.16 unanimous consent

Motion 3. Move WG21/N2657 "Local and Unnamed Types as Template Arguments" into the C++0X Working Paper.

WG favor oppose abstain
PL22.16 unanimous consent 0 0

Motion 4. Move WG21/N2658 "Constness of Lambda Functions (Revision 1)" into the C++0X Working Paper.

WG favor oppose abstain
PL22.16 unanimous consent 0 0

Motion 5. Move WG21/N2658 "Solving the SFINAE problem for expressions" into the C++0X Working Paper.

WG favor oppose abstain
PL22.16 23 1 0

Motion 6. Move WG21/N2664 "C++ Data-Dependency Ordering: Atomics and Memory Model" into the C++0X Working Paper.

WG favor oppose abstain
PL22.16 unanimous consent

Motion 7. Move WG21/N2672 "Initializer List proposed wording" into the C++0X Working Paper.

WG favor oppose abstain
PL22.16 23 0 1

Motion 8. Move WG21/N2670 "Minimal Support for Garbage Collection and Reachability-Based Leak Detection (revised)" into the C++0X Working Paper.

WG favor oppose abstain
PL22.16 22 0 2

Motion 9. Move WG21/N2660 "Dynamic Initialization and Destruction with Concurrency" into the C++0X Working Paper.

WG favor oppose abstain
PL22.16 23 0 1

Motion 10. Move we apply the resolutions of all issues marked "ready" from N2608 to the C++0X Working Paper, i.e. issues numbered 28, 118, 141, 276, 288, 485, 644, 661, 663, 666.

WG favor oppose abstain
PL22.16 unanimous consent

Library Working Group

Motion 1. Move we apply the resolutions to the following issues from N2612 to the C++0X Working Paper:

387, 518, 550, 574, 595, 596, 612, 618, 629, 638, 672, 673, 685, 710, 715, 722, 740, 743, 744, 746, 749, 755, 759, 761, 766, 768, 770, 775, 777, 778, 781, 782, 783, 789, 792, 798

WG favor oppose abstain
PL22.16 unanimous consent

Motion 2.

Move: The committee requests the LWG defer discussion of new proposals that would add features to the C++0x standard library until after the C++0x ships.

WG favor oppose abstain
PL22.16 20 2 2

Motion 3. Move we apply N2514 "Implicit Conversion Operators for Atomics" to the C++0X Working Paper.

WG favor oppose abstain
PL22.16 unanimous consent

Motion 4. Move we apply N2667 "Reserved namespaces for POSIX" to the C++0X Working Paper.

WG favor oppose abstain
PL22.16 22 1 1

Motion 5. Move we apply N2678 "Error Handling Specification for Chapter 30 (Threads) (Revision 1)" to the C++0X Working Paper.

WG favor oppose abstain
PL22.16 unanimous consent

Motion 6. Move we apply N2661 "A Foundation to Sleep On" to the C++0X Working Paper.

WG favor oppose abstain
PL22.16 22 1 1

Motion 7. Move we apply N2674 "Shared_ptr atomic access, revision 1" to the C++0X Working Paper.

WG favor oppose abstain
PL22.16 23 0 1

Motion 8. Move we apply N2666 "More STL algorithms (revision 2)" to the C++0X Working Paper.

WG favor oppose abstain
PL22.16 unanimous consent

Motion 9. Move we apply N2669 "Thread-Safety in the Standard Library (Rev 2)" to the C++0X Working Paper.

WG favor oppose abstain
PL22.16 19 2 3

Motion 10. Move we apply N2435 "Explicit bool for Smart Pointers" to the C++0X Working Paper.

WG favor oppose abstain
PL22.16 unanimous consent

Motion 11. Move we apply N2679 "Initializer List for Standard Containers (Revision 1)" to the C++0X Working Paper.

WG favor oppose abstain
PL22.16 unanimous consent

Motion 12. Move we apply N2680 "Proposed Wording for Placement Insert (Revision 1)" to the C++0X Working Paper.

WG favor oppose abstain
PL22.16 unanimous consent

Meredith made the following announcement on behalf of LWG: from this point forward, the library group would like all papers to include full concept wording.

10.2 Future meetings:

See 11.1, below.

10.3 Issues delayed until Saturday

None.

11. Plans for the future

11.1 Next meeting

11.2 Mailings

Nelson reported the following mailing deadlines:

post-meeting mailing June 27, 2008
mid-term mailing July 25, 2008
pre-San Francisco mailing August 22, 2008

11.3 Following meetings

The following meetings are as follows:

  1. September 14-20, 2008 in the San Francisco Bay area -- this meeting will be co-located with WG14
  2. March 2009, location TBD
  3. July 2009, Frankfurt Germany
  4. October 2009, location TBD

Plum moved to thank the host. Applause.

Motion to adjourn

Mover: Hedquist
Seconder: Spicer

Unanimous consent.

Attendance

Company/Organization Representative Mon Tue Wed Thu Fri Sat
Adobe Systems Mat Marcus V V V V V V
Apple Computer Howard E. Hinnant V V V V V V
Bloomberg John Lakos V V V V V
CodeGear Alisdair Meredith V V V V V V
Dawes Beman G. Dawes V V V V V
Dinkumware P. J. Plauger V V V V V V
Dinkumware Tana Plauger A A A A A A
Edison Design Group J. Stephen Adamczyk V V V V V V
Edison Design Group Daveed Vandevoorde A A A A A A
Edison Design Group John H. Spicer A A A A A A
Edison Design Group Mike Herrick A A A A A A
Edison Design Group William M. Miller A A A A A A
Fermi Nat. Accelerator Lab Marc F. Paterno V V V V V V
Gimpel Software James Widman V V V V V V
Google Lawrence Crowl V V V V V V
Hewlett-Packard PremAnand Rao V V V V V V
Hewlett-Packard Hans Boehm A A A
IBM Robert Klarer V V V V V V
IBM Michael Wong A A A A A
IBM Paul McKenney A A A A A
IBM Raul Silvera A A A A A
Indiana University Doug Gregor V V V V V V
Intel Clark Nelson V V V V V V
Microsoft Jonathan Caves V V V V V V
Microsoft Herb Sutter A A A A A A
National ICT Australia Manfred Doudar V V V V V
Oracle Paolo Carlini V V V V V
Perennial Barry Hedquist V V V V V V
Plum Hall Thomas Plum V V V V V V
Plum Hall Francis W. Glassborow A A A A A A
Programming Research Dietmar Kühl A A A A A A
Red Hat Jason Merrill V V V V V V
Red Hat Benjamin Kosnik A A A A A A
Rogue Wave Software Martin Sebor V V V V V
Roundhouse Consulting Pete Becker V V V V V V
Sandia National Labs K. Noel Belcourt V V V V V
Sun Microsystems Stephen D. Clamage V V V V V V
Symantec Mike Spertus V V V V V V
Tele Atlas Alan Talbot V V V V V V
Texas A&M Jaakko Järvi A V V V V V
Texas A&M Bjarne Stroustrup V A A A A
USENIX Nick Stoughton V V V V V
Zephyr Associates Thomas Witt V V V V V V
Bruker Daltonics Daniel Krügler N N N N N N
HP Christophe de Dinechin N
ILOG Georges Schumacher N N N N N N
INRIA Sylvain Pion N N N N N N
Integrable Solutions Gabriel Dos Reis N N N N N N
Interactive Data Managed Solutions Jens Maurer N N N N N N
Knearer Winck Bruno N N N N
OCA Alain Miniussi N N N
TU Dresden Peter Gottschling N N N N N
University of Nice Jean-Paul Rigault N N N N N N
Vollmann Engineering Detlef Vollmann N N N N N N
Alberto Ganesh Barbati N N N N N N
Loïc Joly N N N N N N