diff options
| author | Eli Friedman <eli.friedman@gmail.com> | 2009-06-27 05:59:59 +0000 |
|---|---|---|
| committer | Eli Friedman <eli.friedman@gmail.com> | 2009-06-27 05:59:59 +0000 |
| commit | 173e0b7a96c59b46787d6063b4baab102238777a (patch) | |
| tree | 5a7a324e01ecc435d73a5844f3769f49f28d5a41 /clang/lib/Sema/SemaDeclCXX.cpp | |
| parent | 1ec3afdc66dd2dbaeaa3535dd7e6a0fc81e2f3ed (diff) | |
| download | bcm5719-llvm-173e0b7a96c59b46787d6063b4baab102238777a.tar.gz bcm5719-llvm-173e0b7a96c59b46787d6063b4baab102238777a.zip | |
Fix a bogus error overloading an operator where the only class
parameter has a dependent type.
llvm-svn: 74380
Diffstat (limited to 'clang/lib/Sema/SemaDeclCXX.cpp')
| -rw-r--r-- | clang/lib/Sema/SemaDeclCXX.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/Sema/SemaDeclCXX.cpp b/clang/lib/Sema/SemaDeclCXX.cpp index b7a429991f4..cf0dab5cf29 100644 --- a/clang/lib/Sema/SemaDeclCXX.cpp +++ b/clang/lib/Sema/SemaDeclCXX.cpp @@ -1789,7 +1789,7 @@ Sema::DeclPtrTy Sema::ActOnUsingDeclaration(Scope *S, AttributeList *AttrList, bool IsTypeName) { assert(!SS.isInvalid() && "Invalid CXXScopeSpec."); - assert(TargetName || Op && "Invalid TargetName."); + assert((TargetName || Op) && "Invalid TargetName."); assert(IdentLoc.isValid() && "Invalid TargetName location."); assert(S->getFlags() & Scope::DeclScope && "Invalid Scope."); @@ -2746,7 +2746,8 @@ bool Sema::CheckOverloadedOperatorDeclaration(FunctionDecl *FnDecl) { ParamEnd = FnDecl->param_end(); Param != ParamEnd; ++Param) { QualType ParamType = (*Param)->getType().getNonReferenceType(); - if (ParamType->isRecordType() || ParamType->isEnumeralType()) { + if (ParamType->isDependentType() || ParamType->isRecordType() || + ParamType->isEnumeralType()) { ClassOrEnumParam = true; break; } |

