Author: Erick Velez Date: 2025-06-13T16:35:30-07:00 New Revision: 7f69cd578de899f8b00525a02d1fe25dab567bcf
URL: https://github.com/llvm/llvm-project/commit/7f69cd578de899f8b00525a02d1fe25dab567bcf DIFF: https://github.com/llvm/llvm-project/commit/7f69cd578de899f8b00525a02d1fe25dab567bcf.diff LOG: [clang-doc] remove default label on some switches (#143919) 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. Added: Modified: clang-tools-extra/clang-doc/BitcodeReader.cpp clang-tools-extra/clang-doc/BitcodeWriter.cpp clang-tools-extra/clang-doc/Representation.cpp clang-tools-extra/clang-doc/Serialize.cpp clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp Removed: ################################################################################ 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 ""; } } _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits