This patch implements CWG 2397, allowing array of placeholder type
to be valid.
See also https://wg21.cmeerw.net/cwg/issue2397.
Differential D147909
[clang] Implement CWG 2397 Authored by zyounan on Apr 10 2023, 12:12 AM.
Details
This patch implements CWG 2397, allowing array of placeholder type See also https://wg21.cmeerw.net/cwg/issue2397.
Diff Detail
Event TimelineComment Actions The changes need a release note, but also this should have changes to clang/test/CXX/drs/dr23xx.cpp with the proper dr markings and update clang/www/cxx_dr_status.html.
Comment Actions Agree, this test clearly belongs to clang/test/CXX/drs/dr23xx.cpp. Comment Actions Thank you for the suggestion and I've updated my patch. :)
Comment Actions LGTM!
| ||||||||||||||||||||||||||||||||||||||
I think it'd be good to also show a constexpr test, like:
constexpr int foo() { int a[] = { 1, 2, 3 }; auto (&c)[3] = a; return c[2]; } static_assert(foo() == 3, "");to prove that we actually perform the assignment properly, not just figure out the deduced type correctly.