1 //===----------------------------------------------------------------------===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 // UNSUPPORTED: modules-build
10 
11 // Poison the std:: names we might use inside __gnu_cxx to ensure they're
12 // properly qualified.
13 struct allocator;
14 struct pair;
15 struct equal_to;
16 struct unique_ptr;
17 
18 // Prevent <ext/hash_set> from generating deprecated warnings for this test.
19 #if defined(__DEPRECATED)
20 #   undef __DEPRECATED
21 #endif
22 
23 #include <ext/hash_set>
24 
25 #include "test_macros.h"
26 
27 namespace __gnu_cxx {
28 template class hash_set<int>;
29 }
30 
main(int,char **)31 int main(int, char**) {
32   typedef __gnu_cxx::hash_set<int> Set;
33   Set s;
34   Set s2(s);
35   ((void)s2);
36 
37   return 0;
38 }
39