diff options
-rw-r--r-- | clang/include/clang/Basic/Diagnostic.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/include/clang/Basic/Diagnostic.h b/clang/include/clang/Basic/Diagnostic.h index 46a83143448..90b9e2ca31d 100644 --- a/clang/include/clang/Basic/Diagnostic.h +++ b/clang/include/clang/Basic/Diagnostic.h @@ -164,7 +164,8 @@ public: void setDiagnosticMapping(diag::kind Diag, diag::Mapping Map) { assert(Diag < diag::DIAG_UPPER_LIMIT && "Can only map builtin diagnostics"); - assert(isBuiltinNoteWarningOrExtension(Diag) && "Cannot map errors!"); + assert((isBuiltinNoteWarningOrExtension(Diag) || Map == diag::MAP_FATAL) && + "Cannot map errors!"); unsigned char &Slot = DiagMappings[Diag/2]; unsigned Bits = (Diag & 1)*4; Slot &= ~(7 << Bits); |