C++ Logo

SG10

Advanced search

Subject: [SG10] Minutes from Lenexa meeting
From: Nelson, Clark (clark.nelson_at_[hidden])
Date: 2015-05-27 20:23:43


SG10 met at the Overland Park Marriott at 7:30 PM on 2015-05-05.

Attending:
Clark Nelson (chair)
Walter Brown
Jens Maurer
John Spicer
Richard Smith
Jared Hoberock

We decided to add an annex to SD-6, containing model text, for inclusion in
a Technical Specification, to describe feature-test macros. (Jared was in
attendance to make sure there would be no issues with respect to the
Concurrency TS.) The result is included in the attached draft.

AI: Clark to try to get the Concepts TS to go along with this direction.

We decided that SD-6 should include information about feature-test macros
defined in Technical Specifications, so that there would be a single place
where information about all the macros would be available. The plan is to
incorporate that information once a TS is finalized, but that a test macro
should be specified in a PDTS.

AI: Clark to incorporate macros from the four TSes that have been or are
being finalized (not in the attached draft).

We agreed that the argument to __has_cpp_attribute should be subject to
macro expansion, and that, lacking any specific statement to the contrary,
it is already specified to be so.

Primarily with mathematical special functions in mind, there was some
discussion of what to do about conditionally-supported features. In the
attached draft I have resurrected (as an editorial note) the table that I
wrote oh so long ago, for people to consider again. (Although in light of
later events, this might not be too interesting.)

We reviewed the proposed changes to the C++14 table; no concerns were
raised.

We briefly considered what to do about C++11. As an interim step, the
consensus seemed to be not to add anything new at this time; the additions
have been removed from the attached draft. For an ultimate decision, it was
considered necessary to understand Microsoft's plans with respect to SD-6.

AI: Clark to query Microsoft and report back.

Also, there was talk about adding an index for all the macro names.

AI: Clark to work on an index.

Following up from the meeting:

Naturally, new changes were approved at this meeting, for which I have
already added rationale stubs. For each of these, I am soliciting a
contribution of either an example of how a macro could be used or an
explanation of why a macro wouldn't be useful. (I think I can handle N4366
by myself. :-)

Richard pointed out an example he posted on the wiki for N4268. I have
incorporated it in the attached draft -- along with an editorial note
raising the question of the usefulness of the technique and the macro.

After consultation with James Dennett, I have also included rationale for
why a macro for N3922 wouldn't be justified.

Coming into Lenexa, those were the last two C++17 changes that were missing
rationale. I'd like everyone to take one more critical look at everything in
section 4.2, to see if there's anything you find questionable. Once we're
sure we like all the rationale for what macros should and shouldn't be
defined, we then need to go back through the table to settle the exact
names.

We should probably hold a teleconference for that. Would the usual time slot
on June 15 be good?

--
Clark Nelson            Chair, PL22.16 (ANSI C++ standard committee)
Intel Corporation       Chair, SG10 (C++ SG for feature-testing)
clark.nelson_at_[hidden]  Chair, CPLEX (C SG for parallel language extensions)



SG10 list run by sg10-owner@lists.isocpp.org