================ @@ -102,11 +102,21 @@ namespace PR33839 { for (auto [x] : a) { // expected-warning {{unused variable '[x]'}} } } - void use() { + void use() { f<int>(); // expected-note {{instantiation of}} g<true>(); g<false>(); h<int>(); // expected-note {{instantiation of}} } } + +namespace maybe_unused_binding { + +void test() { + struct X { int a, b; } x; + auto [a [[maybe_unused]], b] = x; // expected-warning {{an attribute specifier sequence attached to a structured binding declaration is a C++2c extension}} ---------------- yronglin wrote:
Should we add a test to check the `[[maybe_unused]]` takes effect. e.g. checks whether there has `warning: unused variable '[a, b]' [-Wunused-variable]`. I've a question about this test case. We only add `[[maybe_unused]]` to `a` , IIUC, should we also emit a warning that `unused variable 'b'`? https://github.com/llvm/llvm-project/pull/89906 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits