1 /* { dg-options "-Wdeprecated-copy -fno-diagnostics-json-formatting -fdiagnostics-format=json" } */
3 template <class> class b;
11 template <class> struct e;
15 template <class, class> class h;
16 template <class i> class b {
27 template <class i, class> class s : f { s &p(const i *, const i *, g); };
28 template <class i, class t> s<i, t> &s<i, t>::p(const i *, const i *, g) {
37 template <class i, class> class h {
40 void o(const i *, const i *, unsigned);
43 template <class i, class t> void h<i, t>::o(const i *, const i *, unsigned) {
47 template s<char, e<char>> &s<char, e<char>>::p(const char *, const char *, g);
49 /* { dg-regexp ".*" } */