stop calling II::getName() unnecesarily in sema
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59609 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaDeclCXX.cpp b/lib/Sema/SemaDeclCXX.cpp
index b62aa9a..bf160ac 100644
--- a/lib/Sema/SemaDeclCXX.cpp
+++ b/lib/Sema/SemaDeclCXX.cpp
@@ -644,13 +644,13 @@
// It didn't name a member, so see if it names a class.
TypeTy *BaseTy = isTypeName(*MemberOrBase, S, 0/*SS*/);
if (!BaseTy)
- return Diag(IdLoc, diag::err_mem_init_not_member_or_class,
- MemberOrBase->getName(), SourceRange(IdLoc, RParenLoc));
+ return Diag(IdLoc, diag::err_mem_init_not_member_or_class)
+ << MemberOrBase << SourceRange(IdLoc, RParenLoc);
QualType BaseType = Context.getTypeDeclType((TypeDecl *)BaseTy);
if (!BaseType->isRecordType())
- return Diag(IdLoc, diag::err_base_init_does_not_name_class,
- BaseType.getAsString(), SourceRange(IdLoc, RParenLoc));
+ return Diag(IdLoc, diag::err_base_init_does_not_name_class)
+ << BaseType.getAsString() << SourceRange(IdLoc, RParenLoc);
// C++ [class.base.init]p2:
// [...] Unless the mem-initializer-id names a nonstatic data
@@ -697,8 +697,8 @@
// a direct non-virtual base class and an inherited virtual base
// class, the mem-initializer is ill-formed.
if (DirectBaseSpec && VirtualBaseSpec)
- return Diag(IdLoc, diag::err_base_init_direct_and_virtual,
- MemberOrBase->getName(), SourceRange(IdLoc, RParenLoc));
+ return Diag(IdLoc, diag::err_base_init_direct_and_virtual)
+ << MemberOrBase << SourceRange(IdLoc, RParenLoc);
return new CXXBaseOrMemberInitializer(BaseType, (Expr **)Args, NumArgs);
}