Doc No: SC22/WG21/N1915 J16/05-0175 Date: 2005-10-03 Project: JTC1.22.32 Reply to: Robert Klarer IBM Canada, Ltd. [email protected]
Clamage called the meeting to order at 09:06(GMT-05:00) on Monday, October 3, 2005
Clamage introduced John Hill, the chair of JTC1/SC22.
Stephen Michell welcomed everyone to Mont Tremblant, and described facilities for the meeting.
Clamage had the attendees introduce themselves.
Nelson reviewed membership and voting rules. Nelson then circulated the attendance list and membership list. Clamage reviewed procedures for the meeting.
Clamage presented the agenda (document J16/05-0142 = WG21/N1882), and proposed the following amendments to it:
Motion to approve the agenda as amended:
Mover: Dawes |
Seconder: Hedquist |
WG | favor | oppose | abstain |
J16 | lots | 0 | 0 |
WG21 | 8 | 0 | 0 |
Sutter suggested that, since Concepts is a topic of interest to everyone, the committee will meet as a single group to discuss goals for Concepts, and the committee will meet again as a single group, perhaps on another day, to discuss the details of the proposals themselves (we have two competing proposals).
Stroustrup requested that the discussion of goals for Concepts be held Tuesday morning.
Austern suggested that a presentation that would compare the two competing proposals to add support for Concepts to C++ would be very valuable.
Sutter suggested that Austern could conduct this presentation himself, and Austern agreed. This presentation will take place on Thursday morning.
Stroustrup also noted that a discussion of Garbage Collection will take place on Thursday, after the Concepts presentation.
Miller reported that 17 CWG issues are currently in Ready state. These will be brought forward for movement to DR status. There are 14 CWG issues in review status.
Papers to be reviewed and possibly brought forward for approval at this meeting include:
Hinnant reported that the LWG has 31 papers to review. These papers mostly consist in proposals for changes or additions to either the C++ Standard Library, the TR1 libraries, or TR2. There are 8 LWG issues in Ready status, and these will be proposed for movement to DR status at this meeting.
Stroustrup described the EWG's activities for the coming week. In particular, he noted that there are several proposals concerning initialization before the EWG, and that he wants to deal with them as a group
Stroustrup also noted that there are several proposals before the EWG that the Working Group would like to wrap up, including proposals for "auto," "decltype," and "nullptr."
Motion to approve the minutes (document J16/05-0049 = WG21/N1789):
Mover: Plum |
Seconder: Crowl |
WG | favor | oppose | abstain |
J16 | lots | 0 | 0 |
WG21 | 8 | 0 | 0 |
Sutter reports:
P. J. Plauger reports:
Plum reports:
The current draft of the WP is J16/05-0064 = WG21/N1804. The editor's report corresponding to this draft is J16/05-0065 = WG21/N1805
Becker thanked Dawes, Adamczyk, Hinnant, Miller for their review of the draft.
Miller asked whether any progress had been made on adding revision bars to the draft. Becker replied that there wasn't, but that he would look into it.
Motion to accept the working paper J16/05-0064 = WG21/N1804 ):
Mover: Plauger |
Seconder: Dawes |
WG | favor | oppose | abstain |
J16 | lots | 0 | 1 |
WG21 | 8 | 0 | 0 |
We have three subgroups: Core, Library, and Evolution.
The committee broke into subgroups at 11:00 (GMT-05:00).
Miller presented Core Working Group status and reviewed formal motions to be made Saturday (for formal motions, see 9.1, below).
1. 18 CWG issues in Ready status will be moved for integration into the Working Draft. 13 issues have been moved to Ready status. The CWG has analyzed and prioritized 27 new issues, including 1 NAD, and has significantly reduced its drafting backlog.
2. The CWG has reviewed proposals for the following:
The general feeling on these proposals is that they are technically sound, and need some refinement in their wording.
Nelson reported that the CWG has agreed that, in the future, initial reviews might be conducted by one or two core members, before a proposal is presented to the CWG as a whole. This is expected to be a more efficient way of working.
Stroustrup suggested as well that CWG members can always participate in EWG proceedings, too.
Nelson responded by asking whether the wording of proposals is a collaborative activity in EWG proceedings.
Stroustrup answered that wording is mostly done between meetings.
Nelson suggested that proposed wording could be posted onto the Wiki or the reflectors.
Stroustrup noted that he has been encouraging exactly that.
Dawes inquired about the CWG's criteria for advancing proposals that have been advanced to them by the EWG.
Nelson replied that an imporant criterion for CWG is that a proposal has been implemented, because no usage experience can be claimed otherwise.
3.Straw polls
3.1. Move to advance the following core working group issues to DR status,
and apply them to the Working Draft:
197, 237, 291, 299, 317, 348, 354, 382, 391, 401, 442, 446, 447, 450, 451, 470, 474, and 497.
(This is the list of issues in Ready status in
J16/05-0104 = WG21/N1844, plus issue 237.)
WG | favor | oppose | abstain |
J16 | lots | 0 | 0 |
WG21 | 7 | 0 | 1 |
3.2. Move to adopt J16/05-0051 = WG21/N1791, "Extended friend Declarations" and update the Working Draft accordingly.
WG | favor | oppose | abstain |
J16 | lots | 0 | 0 |
WG21 | 7 | 0 | 1 |
3.3. Move to adopt J16/05-0071 = WG21/N1811, "Adding the long long Type to C++ (Revision 3)" and update the Working Draft accordingly.
WG | favor | oppose | abstain |
J16 | lots | 0 | 0 |
WG21 | 8 | 0 | 0 |
3.4. Move to adopt J16/04-0093 = WG21/N1653, "Working Draft Changes for C99 Preprocessor Synchronization" with the following two changes and update the Working Draft accordingly.
WG | favor | oppose | abstain |
J16 | lots | 0 | 0 |
WG21 | 8 | 0 | 0 |
Hinnant presented Library Working Group status and reviewed formal motions to be made Saturday (for formal motions, see 9.1, below).
The LWG had been processing TR issues, DRs, and reviewing LWG extensions (proposals to C++0x and TR2).
8 issues in Ready status will be brought forward for promotion to DR status: 280, 461, 464, 465, 467, 468, 474, 496
On the topic of LWG issue 464, Sutter asked whether this should be part of a general review of container interfaces. Sutter referred the committee to "The Illusion of Container Equivalence" in _Effective STL_, by Scott Meyers.
Nelson expressed surprise that the DR process was being used to introduce an extension.
Hinnant noted that this is a very small change. In the past, LWG was very conservative when considering requests for extensions through Defect Reports. Now that WG21 has a Working Draft for a revised C++ standard, the general feeling in the LWG was that it could be slightly more liberal than before.
Discussion ensued as to whether items appearing in issues lists should be considered equivalent to individual papers.
Crowl asked about LWG issue 468. In particular, he inquired as to whether the resolution to this issue could affect source or binary compatibility.
Becker responded that the change described in the resolution to issue 468 replaces a conversion to void * to a conversion to an unspecified type that is implicitly convertible to void *, so existing implementations remain conforming. The change allows implementors to use a safer conversion, at the possible cost of backwards-compatibility.
Straw poll: Move to advance the following library working group issues to WP status, and apply them to the Working Draft: 280, 461, 464, 465, 467, 468, 474, 496.
WG | favor | oppose | abstain |
J16 | lots | 0 | 0 |
WG21 | 8 | 0 | 0 |
Hinnant reported that 24 issues were discussed, and 14 of those have been moved to Ready state.
30 proposal papers were reviewed. For each paper, a show of interest has been recorded. The following proposals were recommended by the LWG for possible inclusion in TR2:
Stroustrup asked where there was interest in or discussion of an infinite precision integral library.
Dawes answered that there was discussion of this in Lillehammer.
Plum asked how the LWG distinguishes between proposals for TR2 and proposals for C++0x.
Hinnant replied that extremely small proposals, or changes to existing libraries will tend to be considered for C++0x. New libraries will tend to be considered for TR2.
The following proposals were recommended by the LWG for possible inclusion in C++0x:
Nelson asked for the status in the CWG of the rvalue reference proposal.
Miller answered that the CWG has not yet reviewed this proposal, and will not bring it forward for approval at this meeting.
Sutter asked whether N1802 introduces new dependency cycles between existing standard headers.
Becker replied that he hasn't looked at this issue, specifically, but that he expects that it won't be a problem for implementors.
Hinnant drew attention to the proposal for two new iostream manipulators; of the two manipulators, the LWG likes one (though it dislikes the proposed name), and does not like the other. The LWG considered the alternate name "autofloat" for the manipulator that it favours. Stroustrup suggested the name "general," as another possibility.
Hinnant reported that there was some mild support for the idea of deprecating vector<bool> and providing the same functionality in the form of another class called, perhaps, bitvector.
The following proposals will be treated as Defect Reports:
The LWG discussed decimal types, and rejected N1850, "Towards a Better Allocator Model." Papers still to be discussed before the close of the meeting are N1838, "A Proposal to Add Sockets to the Standard Library," and N1883, "Preliminary Threading Library Proposal for TR2."
Plum recalled that, at the WG14 meeting that was held during the previous week, WG14 forwarded to WG21 some of the proposals that they had received. There was one such proposal that Plum thought would be particularly interesting to WG21: WG14/N1085, "Proposal to augment the interface of malloc/free/realloc/calloc." Is this proposal to be discussed?
Plauger answered that this paper will be discussed at the next meeting, if not this one.
Evolution Working Group (EWG) will be making no formal motions Saturday.
Stroustrup reported on EWG activities and progress, noting that the list of proposals that were discussed is on the Wiki:
Work is underway to produce a unified proposal to add Concepts to C++0x. Work will continue between meetings.
The following proposals, related to initializers and initializer lists will be revised, with wording:
Maurer asked about the the status of N1448, "Controlling Implicit Template Instantiation." It appears to not have been forwarded to core.
Spicer replied that it is his responsibility to draft the wording for this proposal.
See 10.1, below.
1. Move to advance the following core working group issues to DR status,
and apply them to the Working Draft:
197, 237, 291, 299, 317, 348, 354, 382, 391, 401, 442, 446, 447, 450, 451, 470, 474, and 497.
(This is the list of issues in Ready status in
J16/05-0104 = WG21/N1844, plus issue 237.)
Mover: Abrahams |
Seconder: Caves |
WG | favor | oppose | abstain |
J16 | 20 | 0 | 0 |
WG21 | 8 | 0 | 0 |
2. Move to adopt J16/05-0051 = WG21/N1791, "Extended friend Declarations" and update the Working Draft accordingly.
Mover: Nelson |
Seconder: Hinnant |
WG | favor | oppose | abstain |
J16 | 20 | 0 | 0 |
WG21 | 8 | 0 | 0 |
3. Move to adopt J16/05-0071 = WG21/N1811, "Adding the long long Type to C++ (Revision 3)" and update the Working Draft accordingly.
Mover: Hinnant |
Seconder: Caves |
WG | favor | oppose | abstain |
J16 | 20 | 0 | 0 |
WG21 | 8 | 0 | 0 |
4. Move to adopt J16/04-0093 = WG21/N1653, "Working Draft Changes for C99 Preprocessor Synchronization" with the following two changes and update the Working Draft accordingly.
Mover: Nelson |
Seconder: Abrahams |
WG | favor | oppose | abstain |
J16 | 19 | 0 | 0 |
WG21 | 8 | 0 | 0 |
1. Move to advance the following library working group issues to WP status, and apply them to the Working Draft: 280, 461, 464, 465, 467, 468, 474, 496.
Mover: Hinnant |
Seconder: Plauger |
WG | favor | oppose | abstain |
J16 | 19 | 0 | 0 |
WG21 | 8 | 0 | 0 |
None.
None.
Hinnant moved to thank those that provided projectors, noting that they allowed the working groups to complete a considerable volume of work at this meeting. Applause.
Goldthwaite moved to thank Dinkumware for providing the Wiki and the network. Applause
Nelson moved to thank the host. Applause.
The next meeting will be located in Berlin during the week of April 1, 2006. Meeting information is already available on the committee website.
The following meeting will take place during the week of October 14, 2006, in Portland, OR. The meeting hosts are Intel and ANSI.
Plum is organizing TG5 Liaison meetings on the Friday afternoon immediately following each of these two meetings. Plum notes that WG21/J16 members can submit comments to TG5 through WG21 itself, or through their National Body. Those members that chose to submit a comment through their NB should ensure that that NB is represented at the TG5 Liaison in Portland.
No host has yet been determined for the spring 2007 meeting.
The fall 2007 may be colocated with SC22. The tentative location for this meeting is Kona, HI.
Stroustrup has offered to host a future meeting in College Station, TX. Sutter requested feedback from the committee on the possibility of a Spring 2007 meeting in College Station. No objection was raised.
Sutter also requested feedback on the idea of regularly holding six-day meetings, as we did this week, rather than our customary five-day meetings. Discussion ensued.
Nelson suggested that working groups meet on the Sunday prior to the meeting for possible informal technical sessions.
Goldthwaite suggested that WG21 work all day Friday, with the close of meeting on Friday afternoon.
Sutter conducted three straw polls:
1. Are you in favour of six-day meetings that adjourn on Saturday?
favour | oppose |
---|---|
23 | 9 |
2. Are you in favour of five-day meetings that adjourn on Friday afternoon?
favour | oppose |
---|---|
28 | 0 |
3. Are you in favour of six-day meetings that begin early, on Sunday?
favour | oppose |
---|---|
15 | 8 |
Sutter will take direction from the outcome of these straw polls to make Friday a full working day at some meeting or meetings in the future.
Nelson reported the following mailing deadlines:
post-meeting mailing | October 21 2005 |
midterm mailing | December 16 2005 |
pre-meeting mailing | February 24 2006 |
Nelson has stepped down as ANSI International Representative, and will stay on as Vice Chair. Barry Hedquist will assume the role of International Representative.
Nelson moved to thank the host. Applause.
covered on Monday.
Motion to adjourn
Mover: Abrahams |
Seconder: Dawes |
WG | favor | oppose | abstain |
J16 | lots | 0 | 0 |
WG21 | 8 | 0 | 0 |
Applause.
Meeting adjourned at 09:20(GMT-05:00)
Company/Organization | Representative | Mon | Tue | Wed | Thu | Fri | Sat |
---|---|---|---|---|---|---|---|
Abrahams | David Abrahams | V | V | V | V | V | V |
Adobe Systems | Mat Marcus | V | V | V | V | V | V |
AT&T | Bjarne Stroustrup | V | V | V | V | V | V |
Dawes | Beman G. Dawes | V | V | V | V | V | V |
Dinkumware | P. J. Plauger | V | V | V | V | V | |
Dinkumware | Pete Becker | A | A | A | A | A | A |
Dinkumware | Tana Plauger | A | A | A | A | A | A |
Dinkumware | Christopher Walker | A | A | A | |||
Edison Design Group | Daveed Vandevoorde | A | A | A | A | A | A |
Edison Design Group | John H. Spicer | V | V | V | V | V | V |
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 |
Freescale | Howard E. Hinnant | V | V | V | V | V | V |
Gimpel Software | James Gimpel | A | A | A | A | A | A |
Gimpel Software | James Widman | A | A | A | A | A | A |
Matthew Austern | A | A | A | A | A | A | |
Hewlett-Packard | Premanand Rao | V | V | V | V | V | V |
Hewlett-Packard | Hans Boehm | A | A | A | A | A | |
IBM | Robert Klarer | V | V | V | V | V | V |
IBM | Michael Wong | A | A | A | A | A | A |
Indiana University | Doug Gregor | V | V | V | V | V | V |
Indiana University | Andrew Lumsdaine | A | A | A | |||
Intel | Clark Nelson | V | V | V | V | V | V |
Intel | Judy Ward | A | A | A | A | A | A |
Mentor Graphics | Antonio Bigazzi | V | V | V | V | V | V |
Microsoft | Jonathan Caves | V | V | V | V | V | V |
Microsoft | Herb Sutter | A | A | A | A | A | A |
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 | V |
Polytechnic University | Herve Bronnimann | A | A | A | A | ||
Programming Research | Richard Corden | V | V | V | V | V | V |
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 | ||
Seymour | Bill Seymour | A | A | A | A | A | A |
Sun Microsystems | Lawrence Crowl | V | V | V | V | V | V |
Sun Microsystems | Stephen D. Clamage | A | A | A | A | A | A |
Tele Atlas | Jon Hancock | A | A | A | A | ||
Tele Atlas | Alan Talbot | A | A | A | A | ||
Zephyr Associates | Thomas Witt | V | V | V | V | V | V |
Bleading Edge Software | Jack Reeves | N | N | N | N | N | |
CrystalClear Software | Jack Reeves | N | N | N | N | N | |
EAI-Systems | Dietmar Kühl | N | N | N | N | N | N |
FSG/SC22 | Nick Stoughton | N | N | ||||
INRIA | Sylvain Pion | N | N | N | N | ||
Integrable Solutions | Gabriel Dos Reis | N | N | N | N | N | N |
IS Teledata | Jens Maurer | N | N | N | N | N | N |
JTC1 SC22 | John L. Hill | N | |||||
LM Ericsson Finland | Attila Fehér | N | N | N | N | N | N |
Ramtex International | Thorsten Ottosen | N | N | N | N | N | N |
RAP | Keld Simonsen | N | N | N | N | ||
Rice University | Jeremy Siek | N | N | N | N | N | N |
Symantec | Mike Spertus | N | N | ||||
Texas A&M | Jaako Järvi | N | N | N | N | N | |
Toshiba | Seiji Hayashida | N | N | N | N | N | N |
Vollman Engineering | Detlef Vollman | N | N | N | N | N | N |
Reg Charney | N | N | N | N | N | ||
Lois Goldthwaite | N | N | N | N | N | N | |
Alisdair Meredith | N | N | N | N | N | N |