llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-clang-tools-extra Author: Erick Velez (evelez7) <details> <summary>Changes</summary> LLVM style prefers no default label on fully covered switches to warn if new enums are added. This patch removes the default label for that purpose or uses IT_default instead of default if that was the only enum not covered. --- Full diff: https://github.com/llvm/llvm-project/pull/143919.diff 5 Files Affected: - (modified) clang-tools-extra/clang-doc/BitcodeReader.cpp (+1-3) - (modified) clang-tools-extra/clang-doc/BitcodeWriter.cpp (+1-1) - (modified) clang-tools-extra/clang-doc/Representation.cpp (+1-1) - (modified) clang-tools-extra/clang-doc/Serialize.cpp (+8-3) - (modified) clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp (+1-1) ``````````diff diff --git a/clang-tools-extra/clang-doc/BitcodeReader.cpp b/clang-tools-extra/clang-doc/BitcodeReader.cpp index 57dd514b90a2b..35058abab0663 100644 --- a/clang-tools-extra/clang-doc/BitcodeReader.cpp +++ b/clang-tools-extra/clang-doc/BitcodeReader.cpp @@ -54,10 +54,8 @@ static llvm::Error decodeRecord(const Record &R, AccessSpecifier &Field, case AS_none: Field = (AccessSpecifier)R[0]; return llvm::Error::success(); - default: - return llvm::createStringError(llvm::inconvertibleErrorCode(), - "invalid value for AccessSpecifier"); } + llvm_unreachable("invalid value for AccessSpecifier"); } static llvm::Error decodeRecord(const Record &R, TagTypeKind &Field, diff --git a/clang-tools-extra/clang-doc/BitcodeWriter.cpp b/clang-tools-extra/clang-doc/BitcodeWriter.cpp index 708ce09d9e5b2..f8a6859169b01 100644 --- a/clang-tools-extra/clang-doc/BitcodeWriter.cpp +++ b/clang-tools-extra/clang-doc/BitcodeWriter.cpp @@ -664,7 +664,7 @@ bool ClangDocBitcodeWriter::dispatchInfoForWrite(Info *I) { case InfoType::IT_typedef: emitBlock(*static_cast<clang::doc::TypedefInfo *>(I)); break; - default: + case InfoType::IT_default: llvm::errs() << "Unexpected info, unable to write.\n"; return true; } diff --git a/clang-tools-extra/clang-doc/Representation.cpp b/clang-tools-extra/clang-doc/Representation.cpp index 3ce930c6965db..820d644ef8b83 100644 --- a/clang-tools-extra/clang-doc/Representation.cpp +++ b/clang-tools-extra/clang-doc/Representation.cpp @@ -143,7 +143,7 @@ mergeInfos(std::vector<std::unique_ptr<Info>> &Values) { return reduce<FunctionInfo>(Values); case InfoType::IT_typedef: return reduce<TypedefInfo>(Values); - default: + case InfoType::IT_default: return llvm::createStringError(llvm::inconvertibleErrorCode(), "unexpected info type"); } diff --git a/clang-tools-extra/clang-doc/Serialize.cpp b/clang-tools-extra/clang-doc/Serialize.cpp index 3cda38115ff7f..e8f1a9cee2675 100644 --- a/clang-tools-extra/clang-doc/Serialize.cpp +++ b/clang-tools-extra/clang-doc/Serialize.cpp @@ -388,7 +388,8 @@ std::string serialize(std::unique_ptr<Info> &I) { return serialize(*static_cast<EnumInfo *>(I.get())); case InfoType::IT_function: return serialize(*static_cast<FunctionInfo *>(I.get())); - default: + case InfoType::IT_typedef: + case InfoType::IT_default: return ""; } } @@ -525,9 +526,13 @@ static std::unique_ptr<Info> makeAndInsertIntoParent(ChildType Child) { InsertChild(ParentRec->Children, std::forward<ChildType>(Child)); return ParentRec; } - default: - llvm_unreachable("Invalid reference type for parent namespace"); + case InfoType::IT_default: + case InfoType::IT_enum: + case InfoType::IT_function: + case InfoType::IT_typedef: + break; } + llvm_unreachable("Invalid reference type for parent namespace"); } // There are two uses for this function. diff --git a/clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp b/clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp index bbe158ed50e28..659870d2a5c0d 100644 --- a/clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp +++ b/clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp @@ -37,7 +37,7 @@ static std::string writeInfo(Info *I) { return writeInfo(*static_cast<FunctionInfo *>(I)); case InfoType::IT_typedef: return writeInfo(*static_cast<TypedefInfo *>(I)); - default: + case InfoType::IT_default: return ""; } } `````````` </details> https://github.com/llvm/llvm-project/pull/143919 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits