annotate gcc/testsuite/g++.dg/warn/deprecated-13.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
131
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
1 // PR c++/84222
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
2 // { dg-do compile }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
3
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
4 struct __attribute__((deprecated)) C { // { dg-message "declared here" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
5 C () {}
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
6 C (const C &); // { dg-bogus "'C' is deprecated" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
7 C (const C &x, const C &y) { C z = x; } // { dg-bogus "'C' is deprecated" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
8 void foo (const C &x, const C &y); // { dg-bogus "'C' is deprecated" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
9 };
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
10
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
11 void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
12 C::foo (const C &x, const C &y) // { dg-bogus "'C' is deprecated" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
13 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
14 C z = x; // { dg-bogus "'C' is deprecated" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
15 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
16
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
17 void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
18 bar (const C &x, const C &y) // { dg-warning "'C' is deprecated" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
19 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
20 C z = x; // { dg-warning "'C' is deprecated" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
21 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
22
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
23 template <int N>
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
24 struct __attribute__((deprecated)) D { // { dg-message "declared here" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
25 D () {}
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
26 D (const D &); // { dg-bogus "is deprecated" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
27 D (const D &x, const D &y) { D z = x; } // { dg-bogus "is deprecated" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
28 void foo (const D &x, const D &y); // { dg-bogus "is deprecated" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
29 };
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
30
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
31 template <int N>
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
32 void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
33 D<N>::foo // { dg-bogus "is deprecated" "" { xfail *-*-* } }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
34 (const D &x, const D &y) // { dg-bogus "is deprecated" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
35 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
36 D z = x; // { dg-bogus "is deprecated" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
37 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
38
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
39 template <int N>
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
40 void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
41 bar (const D<N> &x, const D<N> &y) // { dg-warning "is deprecated" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
42 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
43 D<N> z = x; // { dg-warning "is deprecated" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
44 }