From 2d7c006c4c79211b455ac53c9c18a51281dbcd0b Mon Sep 17 00:00:00 2001
From: Peter Collingbourne <peter@pcc.me.uk>
Date: Fri, 15 May 2015 20:11:18 +0000
Subject: [PATCH] Use llvm::StringSwitch<std::string> to take advantage of
 implicit asserting conversion to std::string.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@237475 91177308-0d34-0410-b5e6-96231b3b80d8
---
 lib/Sema/SemaDeclAttr.cpp | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/lib/Sema/SemaDeclAttr.cpp b/lib/Sema/SemaDeclAttr.cpp
index 4480cff0688..31fe05592f0 100644
--- a/lib/Sema/SemaDeclAttr.cpp
+++ b/lib/Sema/SemaDeclAttr.cpp
@@ -4381,13 +4381,11 @@ static void handleNoSanitizeAttr(Sema &S, Decl *D, const AttributeList &Attr) {
 static void handleNoSanitizeSpecificAttr(Sema &S, Decl *D,
                                          const AttributeList &Attr) {
   std::string SanitizerName =
-      llvm::StringSwitch<const char *>(Attr.getName()->getName())
+      llvm::StringSwitch<std::string>(Attr.getName()->getName())
           .Case("no_address_safety_analysis", "address")
           .Case("no_sanitize_address", "address")
           .Case("no_sanitize_thread", "thread")
-          .Case("no_sanitize_memory", "memory")
-          .Default("");
-  assert(!SanitizerName.empty());
+          .Case("no_sanitize_memory", "memory");
   D->addAttr(::new (S.Context)
                  NoSanitizeAttr(Attr.getRange(), S.Context, &SanitizerName, 1,
                                 Attr.getAttributeSpellingListIndex()));
-- 
GitLab