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 | 29d18a8b93b6a8bf546211093534a747055f556b (patch) | |
| tree | 05e5c4c8e69b085e60b8d75aad0e795633158d9c | |
| parent | 1bd90ff6cc7de818c824b7ff5c84d6b34ca82095 (diff) | |
| download | bcm5719-llvm-29d18a8b93b6a8bf546211093534a747055f556b.tar.gz bcm5719-llvm-29d18a8b93b6a8bf546211093534a747055f556b.zip | |
Unresolved lookups can have using declarations that refer to
unresolved using declarations. Fixes PR14768 / <rdar://problem/13030296>.
llvm-svn: 173883
| -rw-r--r-- | clang/include/clang/Sema/Lookup.h | 2 | ||||
| -rw-r--r-- | clang/test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p10.cpp | 9 |
2 files changed, 10 insertions, 1 deletions
diff --git a/clang/include/clang/Sema/Lookup.h b/clang/include/clang/Sema/Lookup.h index 68b36e7d3ca..3e7e3a16ebc 100644 --- a/clang/include/clang/Sema/Lookup.h +++ b/clang/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/clang/test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p10.cpp b/clang/test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p10.cpp index ae40062fe14..a38ff15525d 100644 --- a/clang/test/CXX/dcl.dcl/basic.namespace/namespace.udecl/p10.cpp +++ b/clang/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() (); + }; +} |

