Title
std::tuple<> should be trivially constructible
Status
c++23
Section
[tuple.cnstr]
Submitter
Louis Dionne

Created on 2019-05-29.00:00:00 last changed 4 months ago

Messages

Date: 2020-11-09.20:31:48

Proposed resolution:

This wording is relative to N4849.

  1. Modify [tuple.cnstr] as indicated:

    -4- If is_trivially_destructible_v<Ti> is true for all Ti, then the destructor of tuple is trivial.

    -?- The default constructor of tuple<> is trivial.

Date: 2020-11-09.00:00:00

[ 2020-11-09 Approved In November virtual meeting. Status changed: Ready → WP. ]

Date: 2020-02-15.00:00:00

[ 2020-02-13, Prague ]

LWG discussion revealed that all where happy that we want this, except that the new wording should become a separate paragraph.

Date: 2020-02-13.12:51:34

That requirement is really easy to enforce, and it has been requested by users (e.g. libc++ bug 41714).

Previous resolution [SUPERSEDED]:

This wording is relative to N4810.

  1. Modify [tuple.cnstr] as indicated:

    -4- If is_trivially_destructible_v<Ti> is true for all Ti, then the destructor of tuple is trivial. The default constructor of tuple<> is trivial.

History
Date User Action Args
2023-11-22 15:47:43adminsetstatus: wp -> c++23
2020-11-09 20:31:48adminsetmessages: + msg11543
2020-11-09 20:31:48adminsetstatus: ready -> wp
2020-02-13 12:51:34adminsetmessages: + msg11064
2020-02-13 12:51:34adminsetstatus: new -> ready
2019-06-08 16:00:15adminsetmessages: + msg10422
2019-05-29 00:00:00admincreate