https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110216
--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The trunk branch has been updated by Jason Merrill <ja...@gcc.gnu.org>: https://gcc.gnu.org/g:1a43af04dd62b80f45700f94ed241347263ed773 commit r14-3204-g1a43af04dd62b80f45700f94ed241347263ed773 Author: gnaggnoyil <gnaggno...@gmail.com> Date: Sat Aug 12 16:16:52 2023 +0800 c++: follow DR 2386 and update implementation of get_tuple_size [PR110216] 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. (jason) Accepting pseudonym sign-off because a change this small is not legally significant for copyright. DR 2386 PR c++/110216 gcc/cp/ChangeLog: * decl.cc (get_tuple_size): Update implementation for DR 2386. gcc/testsuite/ChangeLog: * g++.dg/cpp1z/decomp10.C: Update expected error for DR 2386. * g++.dg/cpp1z/pr110216.C: New test. Signed-off-by: gnaggnoyil <gnaggno...@gmail.com> Reviewed-by: Jason Merrill <ja...@redhat.com>