1// PR c++/19555
2
3namespace __gnu_debug_def { }
4namespace std
5{
6  using namespace __gnu_debug_def;
7  template<typename _Tp> class allocator {}; // { dg-message "std::allocator" }
8}
9namespace __gnu_debug_def
10{
11  template<typename _Tp,
12    typename _Allocator = std::allocator<_Tp> >
13    class vector
14    {
15      void
16      swap(vector<_Tp,_Allocator>& __x);
17    };
18}
19namespace std
20{
21  template<> void
22  vector<int, allocator<int> >::swap(vector<int, allocator<int> >&) { } // { dg-error "" }
23  // { dg-message "suggested alternative" "suggested alternative" { target *-*-* } 22 }
24}
25