diff options
| author | Benjamin Kramer <benny.kra@googlemail.com> | 2012-05-19 16:03:58 +0000 |
|---|---|---|
| committer | Benjamin Kramer <benny.kra@googlemail.com> | 2012-05-19 16:03:58 +0000 |
| commit | 1458c1c0094da1b7abcf6a08548e5f39f8e9414f (patch) | |
| tree | 49db13c98e99d01a8ed42cf43ea819f2d9cf35f1 /clang/lib | |
| parent | 9012a09b1ce3a3c29ad181f04c265ee2a0a03695 (diff) | |
| download | bcm5719-llvm-1458c1c0094da1b7abcf6a08548e5f39f8e9414f.tar.gz bcm5719-llvm-1458c1c0094da1b7abcf6a08548e5f39f8e9414f.zip | |
Simplify some users of DeclarationName::getNameKind. Fold getFETokenInfoAsVoid into its only caller.
llvm-svn: 157116
Diffstat (limited to 'clang/lib')
| -rw-r--r-- | clang/lib/AST/DeclarationName.cpp | 2 | ||||
| -rw-r--r-- | clang/lib/Sema/SemaDeclCXX.cpp | 7 | ||||
| -rw-r--r-- | clang/lib/Sema/SemaExprObjC.cpp | 6 |
3 files changed, 7 insertions, 8 deletions
diff --git a/clang/lib/AST/DeclarationName.cpp b/clang/lib/AST/DeclarationName.cpp index 9eadf325437..28188d91c10 100644 --- a/clang/lib/AST/DeclarationName.cpp +++ b/clang/lib/AST/DeclarationName.cpp @@ -281,7 +281,7 @@ IdentifierInfo *DeclarationName::getCXXLiteralIdentifier() const { void *DeclarationName::getFETokenInfoAsVoidSlow() const { switch (getNameKind()) { case Identifier: - llvm_unreachable("Handled by getFETokenInfoAsVoid()"); + llvm_unreachable("Handled by getFETokenInfo()"); case CXXConstructorName: case CXXDestructorName: diff --git a/clang/lib/Sema/SemaDeclCXX.cpp b/clang/lib/Sema/SemaDeclCXX.cpp index 9143eb282ff..3e1899c7623 100644 --- a/clang/lib/Sema/SemaDeclCXX.cpp +++ b/clang/lib/Sema/SemaDeclCXX.cpp @@ -1504,15 +1504,14 @@ Sema::ActOnCXXMemberDeclarator(Scope *S, AccessSpecifier AS, Declarator &D, Decl *Member; if (isInstField) { CXXScopeSpec &SS = D.getCXXScopeSpec(); + IdentifierInfo *II = Name.getAsIdentifierInfo(); // Data members must have identifiers for names. - if (Name.getNameKind() != DeclarationName::Identifier) { + if (!II) { Diag(Loc, diag::err_bad_variable_name) << Name; return 0; } - - IdentifierInfo *II = Name.getAsIdentifierInfo(); // Member field could not be with "template" keyword. // So TemplateParameterLists should be empty in this case. @@ -4469,7 +4468,7 @@ void Sema::DiagnoseHiddenVirtualMethods(CXXRecordDecl *DC, CXXMethodDecl *MD) { if (Diags.getDiagnosticLevel(diag::warn_overloaded_virtual, MD->getLocation()) == DiagnosticsEngine::Ignored) return; - if (MD->getDeclName().getNameKind() != DeclarationName::Identifier) + if (!MD->getDeclName().isIdentifier()) return; CXXBasePaths Paths(/*FindAmbiguities=*/true, // true to look in all bases. diff --git a/clang/lib/Sema/SemaExprObjC.cpp b/clang/lib/Sema/SemaExprObjC.cpp index 0fbfc2a2783..3a4f3dd8836 100644 --- a/clang/lib/Sema/SemaExprObjC.cpp +++ b/clang/lib/Sema/SemaExprObjC.cpp @@ -1398,14 +1398,14 @@ HandleExprPropertyRefExpr(const ObjCObjectPointerType *OPT, bool Super) { const ObjCInterfaceType *IFaceT = OPT->getInterfaceType(); ObjCInterfaceDecl *IFace = IFaceT->getDecl(); - - if (MemberName.getNameKind() != DeclarationName::Identifier) { + + IdentifierInfo *Member = MemberName.getAsIdentifierInfo(); + if (!Member) { Diag(MemberLoc, diag::err_invalid_property_name) << MemberName << QualType(OPT, 0); return ExprError(); } - IdentifierInfo *Member = MemberName.getAsIdentifierInfo(); SourceRange BaseRange = Super? SourceRange(SuperLoc) : BaseExpr->getSourceRange(); if (RequireCompleteType(MemberLoc, OPT->getPointeeType(), |

