diff options
author | Douglas Gregor <dgregor@apple.com> | 2013-03-27 12:51:49 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2013-03-27 12:51:49 +0000 |
commit | 6bed88e9d25fd7e16edf3d95447ba414d9d73d72 (patch) | |
tree | 7f05d5e6ff69ebffbc017043dd186b3e2895e616 /test | |
parent | 5262dd909a34f4c3e3f061009679fabb77b43ba4 (diff) |
<rdar://problem/13317030> Consider using directives when performing unqualified name lookup into declarations contexts represented by the qualified-id but not in the actual scope hierarchy.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178136 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r-- | test/CXX/basic/basic.lookup/basic.lookup.unqual/p14.cpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/test/CXX/basic/basic.lookup/basic.lookup.unqual/p14.cpp b/test/CXX/basic/basic.lookup/basic.lookup.unqual/p14.cpp index 4ffe538beb..7da3087e7d 100644 --- a/test/CXX/basic/basic.lookup/basic.lookup.unqual/p14.cpp +++ b/test/CXX/basic/basic.lookup/basic.lookup.unqual/p14.cpp @@ -17,3 +17,33 @@ namespace N { int i = 2; N::S N::j = i; N::S N::j2(i); + +// <rdar://problem/13317030> +namespace M { + class X { }; + inline X operator-(int, X); + + template<typename T> + class Y { }; + + typedef Y<float> YFloat; + + namespace yfloat { + YFloat operator-(YFloat, YFloat); + } + using namespace yfloat; +} + +using namespace M; + +namespace M { + +class Other { + void foo(YFloat a, YFloat b); +}; + +} + +void Other::foo(YFloat a, YFloat b) { + YFloat c = a - b; +} |