From 3c483a1858695a84c4c34f59b29008f150e76c9c Mon Sep 17 00:00:00 2001 From: Hubert Tong Date: Thu, 4 Jul 2019 21:40:28 +0000 Subject: [PATCH] [NFC] Make some ObjectFormatType switches covering Summary: This patch removes the `default` case from some switches on `llvm::Triple::ObjectFormatType`, and cases for the missing enumerators are then added. For `UnknownObjectFormat`, the action (`llvm_unreachable`) for the `default` case is kept. For the other unhandled cases, `report_fatal_error` is used instead. Reviewers: sfertile, jasonliu, daltenty Reviewed By: sfertile Subscribers: wuzish, aheejin, jsji, cfe-commits, llvm-commits Tags: #clang, #llvm Differential Revision: https://reviews.llvm.org/D63767 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@365160 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/CGObjCMac.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/CodeGen/CGObjCMac.cpp b/lib/CodeGen/CGObjCMac.cpp index 4d4e54d214..37b9b40b1d 100644 --- a/lib/CodeGen/CGObjCMac.cpp +++ b/lib/CodeGen/CGObjCMac.cpp @@ -4921,7 +4921,7 @@ llvm::Value *CGObjCMac::EmitIvarOffset(CodeGen::CodeGenFunction &CGF, std::string CGObjCCommonMac::GetSectionName(StringRef Section, StringRef MachOAttributes) { switch (CGM.getTriple().getObjectFormat()) { - default: + case llvm::Triple::UnknownObjectFormat: llvm_unreachable("unexpected object file format"); case llvm::Triple::MachO: { if (MachOAttributes.empty()) @@ -4936,6 +4936,10 @@ std::string CGObjCCommonMac::GetSectionName(StringRef Section, assert(Section.substr(0, 2) == "__" && "expected the name to begin with __"); return ("." + Section.substr(2) + "$B").str(); + case llvm::Triple::Wasm: + case llvm::Triple::XCOFF: + llvm::report_fatal_error( + "Objective-C support is unimplemented for object file format."); } } -- 2.40.0