1 // PR c++/79817 - attribute deprecated on namespace.
2 // { dg-do compile { target c++11 } }
3 
4 namespace [[deprecated]] N
5 {
6   typedef decltype(sizeof(int)) T;
7   int x;
8 
9   namespace N2 {
10     typedef decltype(sizeof(int)) T;
11     int y;
12   }
13 }
14 
15 namespace M {
16   namespace [[deprecated]] M2 {
17     typedef decltype(sizeof(int)) T;
18     int z;
19   }
20 }
21 
22 void
fn2()23 fn2 ()
24 {
25   using N::x; // { dg-warning ".N. is deprecated" }
26   N::T j; // { dg-warning ".N. is deprecated" }
27 
28   using M::M2::z; // { dg-warning ".M::M2. is deprecated" }
29   M::M2::T l; // { dg-warning ".M::M2. is deprecated" }
30 
31   using N::N2::y; // { dg-warning ".N. is deprecated" }
32   N::N2::T k; // { dg-warning ".N. is deprecated" }
33 }
34