On 8/12/23 04:16, gnaggnoyil wrote:
DR 2386 updated the tuple_size requirements for structured binding and
it now requires tuple_size to be considered only if
std::tuple_size<TYPE> names a complete class type with member value. GCC
before this patch does not follow the updated requrements, and this
patch is intended to implement it.
DR 2386
PR c++/110216
gcc/cp/ChangeLog:
* decl.cc (get_tuple_size): Update implemetation to follow DR 2386.
gcc/testsuite/ChangeLog:
* g++.dg/cpp1z/decomp10.C: Update expected error message for DR 2386.
* g++.dg/cpp1z/pr110216.C: New test.
Signed-off-by: gnaggnoyil <gnaggno...@gmail.com>
Pushed, thanks!
Note that the GCC DCO policy (https://gcc.gnu.org/dco.html) requires
real names in the sign-off; in this case I've applied the patch anyway
because it is small enough that it's not legally significant for copyright.
I think if you want to contribute larger patches under this pseudonym,
you should file a copyright assignment with the FSF, which explicitly
allows this. "If a contributor wants the FSF to publish only a
pseudonym, that is ok. The contributor should say this, and state the
desired pseudonym, when answering the request- form. The actual legal
papers will use the real name, but the FSF will publish only the
pseudonym."[2]
Thanks again,
Jason
[1]
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/Documentation/process?id=d4563201f33a022fc0353033d9dfeb1606a88330
[2] https://www.gnu.org/prep/maintain/maintain.html#Copyright-Papers