Unify sanitizer kind representation between the driver and the rest of the compiler.

No functional change.

Differential Revision: http://reviews.llvm.org/D9618

llvm-svn: 237055
This commit is contained in:
Peter Collingbourne
2015-05-11 21:39:14 +00:00
parent 83fd486ff4
commit 3eea677f3a
7 changed files with 130 additions and 158 deletions

View File

@@ -329,11 +329,11 @@ static void parseSanitizerKinds(StringRef FlagName,
const std::vector<std::string> &Sanitizers,
DiagnosticsEngine &Diags, SanitizerSet &S) {
for (const auto &Sanitizer : Sanitizers) {
SanitizerKind K = llvm::StringSwitch<SanitizerKind>(Sanitizer)
SanitizerMask K = llvm::StringSwitch<SanitizerMask>(Sanitizer)
#define SANITIZER(NAME, ID) .Case(NAME, SanitizerKind::ID)
#include "clang/Basic/Sanitizers.def"
.Default(SanitizerKind::Unknown);
if (K == SanitizerKind::Unknown)
.Default(0);
if (K == 0)
Diags.Report(diag::err_drv_invalid_value) << FlagName << Sanitizer;
else
S.set(K, true);