[PATCH] D66040: [Sema] Implement DR2386 for C++17 structured binding

Richard Smith - zygoloid via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Aug 15 12:15:23 PDT 2019


rsmith accepted this revision.
rsmith added a comment.
This revision is now accepted and ready to land.

LGTM with minor adjustments to the test.



================
Comment at: clang/test/CXX/drs/dr23xx.cpp:43-57
+#if __cplusplus >= 201707L
+// Otherwise, if the qualified-id std::tuple_size<E> names a complete class
+// type **with a member value**, the expression std::tuple_size<E>::value shall
+// be a well-formed integral constant expression
+namespace std {
+template <typename T> struct tuple_size;
+struct Bad1 { int a, b; };
----------------
Please add a comment

```
// dr2386: 9
```

so that the script that generates cxx_dr_status.html knows to mark that issue as done.

It'd be good to also move as much of this test into a `namespace dr2386` as possible. (Clearly some parts of it need to be in `namespace std`, but I'd prefer that those parts be kept as small as possible to isolate this test from others in the same file.)


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