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);
 }