[clang-doc] Use llvm::createStringError and canonicalize error messages

"Bad block found.\n" -> "bad block found"

The lower cased form with no full stop or newline is more common in LLVM
tools.

Reviewed By: juliehockett

Differential Revision: https://reviews.llvm.org/D66783

git-svn-id: https://llvm.org/svn/llvm-project/clang-tools-extra/trunk@370155 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/clang-doc/BitcodeReader.cpp b/clang-doc/BitcodeReader.cpp
index 7b523ee..8d551d3 100644
--- a/clang-doc/BitcodeReader.cpp
+++ b/clang-doc/BitcodeReader.cpp
@@ -25,8 +25,8 @@
 
 llvm::Error decodeRecord(Record R, SymbolID &Field, llvm::StringRef Blob) {
   if (R[0] != BitCodeConstants::USRHashSize)
-    return llvm::make_error<llvm::StringError>("Incorrect USR size.\n",
-                                               llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "incorrect USR size");
 
   // First position in the record is the length of the following array, so we
   // copy the following elements to the field.
@@ -42,8 +42,8 @@
 
 llvm::Error decodeRecord(Record R, int &Field, llvm::StringRef Blob) {
   if (R[0] > INT_MAX)
-    return llvm::make_error<llvm::StringError>("Integer too large to parse.\n",
-                                               llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "integer too large to parse");
   Field = (int)R[0];
   return llvm::Error::success();
 }
@@ -58,8 +58,8 @@
     Field = (AccessSpecifier)R[0];
     return llvm::Error::success();
   default:
-    return llvm::make_error<llvm::StringError>(
-        "Invalid value for AccessSpecifier.\n", llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid value for AccessSpecifier");
   }
 }
 
@@ -73,16 +73,16 @@
     Field = (TagTypeKind)R[0];
     return llvm::Error::success();
   default:
-    return llvm::make_error<llvm::StringError>(
-        "Invalid value for TagTypeKind.\n", llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid value for TagTypeKind");
   }
 }
 
 llvm::Error decodeRecord(Record R, llvm::Optional<Location> &Field,
                          llvm::StringRef Blob) {
   if (R[0] > INT_MAX)
-    return llvm::make_error<llvm::StringError>("Integer too large to parse.\n",
-                                               llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "integer too large to parse");
   Field.emplace((int)R[0], Blob, (bool)R[1]);
   return llvm::Error::success();
 }
@@ -97,8 +97,8 @@
     Field = IT;
     return llvm::Error::success();
   }
-  return llvm::make_error<llvm::StringError>("Invalid value for InfoType.\n",
-                                             llvm::inconvertibleErrorCode());
+  return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                 "invalid value for InfoType");
 }
 
 llvm::Error decodeRecord(Record R, FieldId &Field, llvm::StringRef Blob) {
@@ -113,8 +113,8 @@
     Field = F;
     return llvm::Error::success();
   }
-  return llvm::make_error<llvm::StringError>("Invalid value for FieldId.\n",
-                                             llvm::inconvertibleErrorCode());
+  return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                 "invalid value for FieldId");
 }
 
 llvm::Error decodeRecord(Record R,
@@ -127,8 +127,8 @@
 llvm::Error decodeRecord(Record R, llvm::SmallVectorImpl<Location> &Field,
                          llvm::StringRef Blob) {
   if (R[0] > INT_MAX)
-    return llvm::make_error<llvm::StringError>("Integer too large to parse.\n",
-                                               llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "integer too large to parse");
   Field.emplace_back((int)R[0], Blob, (bool)R[1]);
   return llvm::Error::success();
 }
@@ -137,8 +137,8 @@
                         const unsigned VersionNo) {
   if (ID == VERSION && R[0] == VersionNo)
     return llvm::Error::success();
-  return llvm::make_error<llvm::StringError>(
-      "Mismatched bitcode version number.\n", llvm::inconvertibleErrorCode());
+  return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                 "mismatched bitcode version number");
 }
 
 llvm::Error parseRecord(Record R, unsigned ID, llvm::StringRef Blob,
@@ -151,8 +151,8 @@
   case NAMESPACE_PATH:
     return decodeRecord(R, I->Path, Blob);
   default:
-    return llvm::make_error<llvm::StringError>(
-        "Invalid field for NamespaceInfo.\n", llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid field for NamespaceInfo");
   }
 }
 
@@ -174,8 +174,8 @@
   case RECORD_IS_TYPE_DEF:
     return decodeRecord(R, I->IsTypeDef, Blob);
   default:
-    return llvm::make_error<llvm::StringError>(
-        "Invalid field for RecordInfo.\n", llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid field for RecordInfo");
   }
 }
 
@@ -197,8 +197,8 @@
   case BASE_RECORD_IS_PARENT:
     return decodeRecord(R, I->IsParent, Blob);
   default:
-    return llvm::make_error<llvm::StringError>(
-        "Invalid field for BaseRecordInfo.\n", llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid field for BaseRecordInfo");
   }
 }
 
@@ -218,8 +218,8 @@
   case ENUM_SCOPED:
     return decodeRecord(R, I->Scoped, Blob);
   default:
-    return llvm::make_error<llvm::StringError>("Invalid field for EnumInfo.\n",
-                                               llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid field for EnumInfo");
   }
 }
 
@@ -239,8 +239,8 @@
   case FUNCTION_IS_METHOD:
     return decodeRecord(R, I->IsMethod, Blob);
   default:
-    return llvm::make_error<llvm::StringError>(
-        "Invalid field for FunctionInfo.\n", llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid field for FunctionInfo");
   }
 }
 
@@ -255,8 +255,8 @@
   case FIELD_TYPE_NAME:
     return decodeRecord(R, I->Name, Blob);
   default:
-    return llvm::make_error<llvm::StringError>("Invalid field for TypeInfo.\n",
-                                               llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid field for TypeInfo");
   }
 }
 
@@ -268,8 +268,8 @@
   case MEMBER_TYPE_ACCESS:
     return decodeRecord(R, I->Access, Blob);
   default:
-    return llvm::make_error<llvm::StringError>(
-        "Invalid field for MemberTypeInfo.\n", llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid field for MemberTypeInfo");
   }
 }
 
@@ -299,8 +299,8 @@
   case COMMENT_EXPLICIT:
     return decodeRecord(R, I->Explicit, Blob);
   default:
-    return llvm::make_error<llvm::StringError>(
-        "Invalid field for CommentInfo.\n", llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid field for CommentInfo");
   }
 }
 
@@ -320,15 +320,14 @@
   case REFERENCE_FIELD:
     return decodeRecord(R, F, Blob);
   default:
-    return llvm::make_error<llvm::StringError>("Invalid field for Reference.\n",
-                                               llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid field for Reference");
   }
 }
 
 template <typename T> llvm::Expected<CommentInfo *> getCommentInfo(T I) {
-  return llvm::make_error<llvm::StringError>(
-      "Invalid type cannot contain CommentInfo.\n",
-      llvm::inconvertibleErrorCode());
+  return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                 "invalid type cannot contain CommentInfo");
 }
 
 template <> llvm::Expected<CommentInfo *> getCommentInfo(FunctionInfo *I) {
@@ -363,9 +362,8 @@
 
 template <typename T, typename TTypeInfo>
 llvm::Error addTypeInfo(T I, TTypeInfo &&TI) {
-  return llvm::make_error<llvm::StringError>(
-      "Invalid type cannot contain TypeInfo.\n",
-      llvm::inconvertibleErrorCode());
+  return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                 "invalid type cannot contain TypeInfo");
 }
 
 template <> llvm::Error addTypeInfo(RecordInfo *I, MemberTypeInfo &&T) {
@@ -389,9 +387,8 @@
 }
 
 template <typename T> llvm::Error addReference(T I, Reference &&R, FieldId F) {
-  return llvm::make_error<llvm::StringError>(
-      "Invalid type cannot contain Reference\n",
-      llvm::inconvertibleErrorCode());
+  return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                 "invalid type cannot contain Reference");
 }
 
 template <> llvm::Error addReference(TypeInfo *I, Reference &&R, FieldId F) {
@@ -400,9 +397,8 @@
     I->Type = std::move(R);
     return llvm::Error::success();
   default:
-    return llvm::make_error<llvm::StringError>(
-        "Invalid type cannot contain Reference.\n",
-        llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid type cannot contain Reference");
   }
 }
 
@@ -413,9 +409,8 @@
     I->Type = std::move(R);
     return llvm::Error::success();
   default:
-    return llvm::make_error<llvm::StringError>(
-        "Invalid type cannot contain Reference.\n",
-        llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid type cannot contain Reference");
   }
 }
 
@@ -426,9 +421,8 @@
     I->Type = std::move(R);
     return llvm::Error::success();
   default:
-    return llvm::make_error<llvm::StringError>(
-        "Invalid type cannot contain Reference.\n",
-        llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid type cannot contain Reference");
   }
 }
 
@@ -438,9 +432,8 @@
     I->Namespace.emplace_back(std::move(R));
     return llvm::Error::success();
   default:
-    return llvm::make_error<llvm::StringError>(
-        "Invalid type cannot contain Reference.\n",
-        llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid type cannot contain Reference");
   }
 }
 
@@ -457,9 +450,8 @@
     I->ChildRecords.emplace_back(std::move(R));
     return llvm::Error::success();
   default:
-    return llvm::make_error<llvm::StringError>(
-        "Invalid type cannot contain Reference.\n",
-        llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid type cannot contain Reference");
   }
 }
 
@@ -473,9 +465,8 @@
     I->Parent = std::move(R);
     return llvm::Error::success();
   default:
-    return llvm::make_error<llvm::StringError>(
-        "Invalid type cannot contain Reference.\n",
-        llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid type cannot contain Reference");
   }
 }
 
@@ -494,15 +485,14 @@
     I->ChildRecords.emplace_back(std::move(R));
     return llvm::Error::success();
   default:
-    return llvm::make_error<llvm::StringError>(
-        "Invalid type cannot contain Reference.\n",
-        llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid type cannot contain Reference");
   }
 }
 
 template <typename T, typename ChildInfoType>
 void addChild(T I, ChildInfoType &&R) {
-  llvm::errs() << "Invalid child type for info.\n";
+  llvm::errs() << "invalid child type for info";
   exit(1);
 }
 
@@ -563,8 +553,8 @@
 
     switch (Res) {
     case Cursor::BadBlock:
-      return llvm::make_error<llvm::StringError>(
-          "Bad block found.\n", llvm::inconvertibleErrorCode());
+      return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                     "bad block found");
     case Cursor::BlockEnd:
       return llvm::Error::success();
     case Cursor::BlockBegin:
@@ -649,8 +639,8 @@
     return llvm::Error::success();
   }
   default:
-    return llvm::make_error<llvm::StringError>("Invalid subblock type.\n",
-                                               llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "invalid subblock type");
   }
 }
 
@@ -701,8 +691,8 @@
 
 llvm::Error ClangDocBitcodeReader::validateStream() {
   if (Stream.AtEndOfStream())
-    return llvm::make_error<llvm::StringError>("Premature end of stream.\n",
-                                               llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "premature end of stream");
 
   // Sniff for the signature.
   for (int Idx = 0; Idx != 4; ++Idx) {
@@ -710,8 +700,8 @@
     if (!MaybeRead)
       return MaybeRead.takeError();
     else if (MaybeRead.get() != BitCodeConstants::Signature[Idx])
-      return llvm::make_error<llvm::StringError>(
-          "Invalid bitcode signature.\n", llvm::inconvertibleErrorCode());
+      return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                     "invalid bitcode signature");
   }
   return llvm::Error::success();
 }
@@ -724,8 +714,8 @@
   else
     BlockInfo = MaybeBlockInfo.get();
   if (!BlockInfo)
-    return llvm::make_error<llvm::StringError>(
-        "Unable to parse BlockInfoBlock.\n", llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "unable to parse BlockInfoBlock");
   Stream.setBlockInfo(&*BlockInfo);
   return llvm::Error::success();
 }
@@ -751,8 +741,8 @@
   case BI_FUNCTION_BLOCK_ID:
     return createInfo<FunctionInfo>(ID);
   default:
-    return llvm::make_error<llvm::StringError>("Cannot create info.\n",
-                                               llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "cannot create info");
   }
 }
 
@@ -769,8 +759,8 @@
     if (!MaybeCode)
       return MaybeCode.takeError();
     if (MaybeCode.get() != llvm::bitc::ENTER_SUBBLOCK)
-      return llvm::make_error<llvm::StringError>(
-          "No blocks in input.\n", llvm::inconvertibleErrorCode());
+      return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                     "no blocks in input");
     Expected<unsigned> MaybeID = Stream.ReadSubBlockID();
     if (!MaybeID)
       return MaybeID.takeError();
@@ -782,8 +772,8 @@
     case BI_MEMBER_TYPE_BLOCK_ID:
     case BI_COMMENT_BLOCK_ID:
     case BI_REFERENCE_BLOCK_ID:
-      return llvm::make_error<llvm::StringError>(
-          "Invalid top level block.\n", llvm::inconvertibleErrorCode());
+      return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                     "invalid top level block");
     case BI_NAMESPACE_BLOCK_ID:
     case BI_RECORD_BLOCK_ID:
     case BI_ENUM_BLOCK_ID:
diff --git a/clang-doc/Generators.cpp b/clang-doc/Generators.cpp
index 65bdc05..fda5ab5 100644
--- a/clang-doc/Generators.cpp
+++ b/clang-doc/Generators.cpp
@@ -21,8 +21,8 @@
       continue;
     return I->instantiate();
   }
-  return llvm::make_error<llvm::StringError>("Can't find generator: " + Format,
-                                             llvm::inconvertibleErrorCode());
+  return createStringError(llvm::inconvertibleErrorCode(),
+                           "can't find generator: " + Format);
 }
 
 // Enum conversion
diff --git a/clang-doc/HTMLGenerator.cpp b/clang-doc/HTMLGenerator.cpp
index 2f88df2..d124759 100644
--- a/clang-doc/HTMLGenerator.cpp
+++ b/clang-doc/HTMLGenerator.cpp
@@ -856,8 +856,8 @@
         genHTML(*static_cast<clang::doc::FunctionInfo *>(I), CDCtx, "");
     break;
   case InfoType::IT_default:
-    return llvm::make_error<llvm::StringError>("Unexpected info type.\n",
-                                               llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "unexpected info type");
   }
 
   HTMLFile F =
@@ -891,9 +891,9 @@
   llvm::sys::path::append(FilePath, "index_json.js");
   llvm::raw_fd_ostream OS(FilePath, FileErr, llvm::sys::fs::F_None);
   if (FileErr != OK) {
-    return llvm::make_error<llvm::StringError>(
-        "Error creating index file: " + FileErr.message() + "\n",
-        llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "error creating index file: " +
+                                       FileErr.message());
   }
   CDCtx.Idx.sort();
   llvm::json::OStream J(OS, 2);
@@ -940,9 +940,9 @@
   llvm::sys::path::append(IndexPath, "index.html");
   llvm::raw_fd_ostream IndexOS(IndexPath, FileErr, llvm::sys::fs::F_None);
   if (FileErr != OK) {
-    return llvm::make_error<llvm::StringError>(
-        "Error creating main index: " + FileErr.message() + "\n",
-        llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "error creating main index: " +
+                                       FileErr.message());
   }
 
   HTMLFile F;
@@ -972,10 +972,10 @@
   std::error_code OK;
   std::error_code FileErr = llvm::sys::fs::copy_file(PathRead, PathWrite);
   if (FileErr != OK) {
-    return llvm::make_error<llvm::StringError>(
-        "Error creating file " + llvm::sys::path::filename(FilePath) + ": " +
-            FileErr.message() + "\n",
-        llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "error creating file " +
+                                       llvm::sys::path::filename(FilePath) +
+                                       ": " + FileErr.message() + "\n");
   }
   return llvm::Error::success();
 }
diff --git a/clang-doc/MDGenerator.cpp b/clang-doc/MDGenerator.cpp
index 6449cba..73fb3d4 100644
--- a/clang-doc/MDGenerator.cpp
+++ b/clang-doc/MDGenerator.cpp
@@ -272,8 +272,8 @@
     genMarkdown(*static_cast<clang::doc::FunctionInfo *>(I), OS);
     break;
   case InfoType::IT_default:
-    return llvm::make_error<llvm::StringError>("Unexpected info type.\n",
-                                               llvm::inconvertibleErrorCode());
+    return createStringError(llvm::inconvertibleErrorCode(),
+                             "unexpected InfoType");
   }
   return llvm::Error::success();
 }
diff --git a/clang-doc/Representation.cpp b/clang-doc/Representation.cpp
index bf3b1f7..29b6807 100644
--- a/clang-doc/Representation.cpp
+++ b/clang-doc/Representation.cpp
@@ -34,8 +34,8 @@
 llvm::Expected<std::unique_ptr<Info>>
 reduce(std::vector<std::unique_ptr<Info>> &Values) {
   if (Values.empty())
-    return llvm::make_error<llvm::StringError>(" No values to reduce.\n",
-                                               llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "no value to reduce");
   std::unique_ptr<Info> Merged = std::make_unique<T>(Values[0]->USR);
   T *Tmp = static_cast<T *>(Merged.get());
   for (auto &I : Values)
@@ -96,8 +96,8 @@
 llvm::Expected<std::unique_ptr<Info>>
 mergeInfos(std::vector<std::unique_ptr<Info>> &Values) {
   if (Values.empty())
-    return llvm::make_error<llvm::StringError>("No info values to merge.\n",
-                                               llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "no info values to merge");
 
   switch (Values[0]->IT) {
   case InfoType::IT_namespace:
@@ -109,8 +109,8 @@
   case InfoType::IT_function:
     return reduce<FunctionInfo>(Values);
   default:
-    return llvm::make_error<llvm::StringError>("Unexpected info type.\n",
-                                               llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "unexpected info type");
   }
 }
 
diff --git a/clang-doc/YAMLGenerator.cpp b/clang-doc/YAMLGenerator.cpp
index da22a76..764784c 100644
--- a/clang-doc/YAMLGenerator.cpp
+++ b/clang-doc/YAMLGenerator.cpp
@@ -289,8 +289,8 @@
     InfoYAML << *static_cast<clang::doc::FunctionInfo *>(I);
     break;
   case InfoType::IT_default:
-    return llvm::make_error<llvm::StringError>("Unexpected info type.\n",
-                                               llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "unexpected InfoType");
   }
   return llvm::Error::success();
 }
diff --git a/clang-doc/tool/ClangDocMain.cpp b/clang-doc/tool/ClangDocMain.cpp
index ecc062f..a674b17 100644
--- a/clang-doc/tool/ClangDocMain.cpp
+++ b/clang-doc/tool/ClangDocMain.cpp
@@ -172,8 +172,8 @@
   llvm::sys::path::native(Root, Path);
   llvm::sys::path::append(Path, RelativePath);
   if (CreateDirectory(Path))
-    return llvm::make_error<llvm::StringError>("Unable to create directory.\n",
-                                               llvm::inconvertibleErrorCode());
+    return llvm::createStringError(llvm::inconvertibleErrorCode(),
+                                   "failed to create directory");
   llvm::sys::path::append(Path, Name + Ext);
   return Path;
 }