[PATCH] D66040: [Sema] Implement DR2386 for C++17 structured binding
Reid Kleckner via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Aug 15 09:10:58 PDT 2019
rnk marked an inline comment as done.
rnk added a comment.
In D66040#1631658 <https://reviews.llvm.org/D66040#1631658>, @thakis wrote:
> rnk, what's the status here?
I think I can get this in today, things just got busy here and I forgot about this. I have to add that test.
================
Comment at: clang/test/CXX/dcl.decl/dcl.decomp/p3.cpp:15
template<> struct std::tuple_size<Bad1> {};
-void no_tuple_size_3() { auto [x, y] = Bad1(); } // expected-error {{cannot decompose this type; 'std::tuple_size<Bad1>::value' is not a valid integral constant expression}}
+void no_tuple_size_3() { auto [x, y] = Bad1(); } // ok, omitting value is valid after DR2386
----------------
Jeroen wrote:
> In the reproduction of https://bugs.llvm.org/show_bug.cgi?id=33236 there is explicit mentioning of `const T`. It would be nice if the test cases for this fix would also have coverage for that.
I'll work it into the dr2386 test case.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D66040/new/
https://reviews.llvm.org/D66040
More information about the cfe-commits
mailing list