diff options
author | Douglas Gregor <dgregor@apple.com> | 2013-01-30 02:10:08 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2013-01-30 02:10:08 +0000 |
commit | e28f6abf588f51a21d1db638e460f9c086c08db4 (patch) | |
tree | b6f6393e321f743a6d534c7b3e9b5ac8e78680fa | |
parent | 74c2498bb9e339345ee32bdd095e76157cec3b86 (diff) |
Unresolved lookups can have using declarations that refer to
unresolved using declarations. Fixes PR14768 / <rdar://problem/13030296>.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173883 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/clang/Sema/Lookup.h | 2 | ||||
-rw-r--r-- | test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p10.cpp | 9 |
2 files changed, 10 insertions, 1 deletions
diff --git a/include/clang/Sema/Lookup.h b/include/clang/Sema/Lookup.h index 68b36e7d3c..3e7e3a16eb 100644 --- a/include/clang/Sema/Lookup.h +++ b/include/clang/Sema/Lookup.h @@ -625,7 +625,7 @@ private: bool sanityCheckUnresolved() const { for (iterator I = begin(), E = end(); I != E; ++I) - if (isa<UnresolvedUsingValueDecl>(*I)) + if (isa<UnresolvedUsingValueDecl>((*I)->getUnderlyingDecl())) return true; return false; } diff --git a/test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p10.cpp b/test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p10.cpp index ae40062fe1..a38ff15525 100644 --- a/test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p10.cpp +++ b/test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p10.cpp @@ -33,3 +33,12 @@ namespace test1 { } } +// PR 14768 +namespace PR14768 { + template<typename eT> class Mat; + template<typename eT> class Col : public Mat<eT> { + using Mat<eT>::operator(); + using Col<eT>::operator(); + void operator() (); + }; +} |