1 | // RUN: %clang_cc1 -fsyntax-only -verify %s |
2 | // expected-no-diagnostics |
3 | |
4 | namespace test0 { |
5 | namespace ns0 { |
6 | class tag; |
7 | int tag(); |
8 | } |
9 | |
10 | namespace ns1 { |
11 | using ns0::tag; |
12 | } |
13 | |
14 | namespace ns2 { |
15 | using ns0::tag; |
16 | } |
17 | |
18 | using ns1::tag; |
19 | using ns2::tag; |
20 | } |
21 | |
22 | // PR 5752 |
23 | namespace test1 { |
24 | namespace ns { |
25 | void foo(); |
26 | } |
27 | |
28 | using ns::foo; |
29 | void foo(int); |
30 | |
31 | namespace ns { |
32 | using test1::foo; |
33 | } |
34 | } |
35 | |
36 | // PR 14768 |
37 | namespace PR14768 { |
38 | template<typename eT> class Mat; |
39 | template<typename eT> class Col : public Mat<eT> { |
40 | using Mat<eT>::operator(); |
41 | using Col<eT>::operator(); |
42 | void operator() (); |
43 | }; |
44 | } |
45 | |