131
|
1 // { dg-do compile { target c++17 } }
|
|
2 // { dg-options "-Wunused" }
|
111
|
3
|
|
4 #include <tuple>
|
|
5
|
|
6 struct A { int i,j,k; };
|
|
7
|
|
8 A f();
|
|
9 int p[3];
|
|
10
|
|
11 int z;
|
|
12
|
|
13 int main()
|
|
14 {
|
|
15 {
|
|
16 auto [i,j,k] = f(); // { dg-warning "unused" }
|
|
17 }
|
|
18 {
|
|
19 [[maybe_unused]] auto [i,j,k] = f();
|
|
20 }
|
|
21 {
|
|
22 auto [i,j,k] = f();
|
|
23 z = i;
|
|
24 }
|
|
25 {
|
|
26 auto [i,j,k] = f(); // { dg-warning "unused" }
|
|
27 i = 5;
|
|
28 }
|
|
29 {
|
|
30 auto [i,j] = std::tuple{1,2}; // { dg-warning "unused" }
|
|
31 }
|
|
32 {
|
|
33 [[maybe_unused]] auto [i,j] = std::tuple{1,2};
|
|
34 }
|
|
35 {
|
|
36 auto [i,j] = std::tuple{1,2};
|
|
37 z = i;
|
|
38 }
|
|
39 {
|
|
40 auto [i,j] = std::tuple{1,2};
|
|
41 i = 5;
|
|
42 }
|
|
43 {
|
|
44 auto [i,j,k] = p; // { dg-warning "unused" }
|
|
45 }
|
|
46 {
|
|
47 [[maybe_unused]] auto [i,j,k] = p;
|
|
48 }
|
|
49 {
|
|
50 auto [i,j,k] = p;
|
|
51 z = i;
|
|
52 }
|
|
53 {
|
|
54 auto [i,j,k] = p; // { dg-warning "unused" }
|
|
55 i = 5;
|
|
56 }
|
|
57 }
|