summaryrefslogtreecommitdiff
path: root/lib/ubsan/ubsan_handlers.cc
diff options
context:
space:
mode:
authorVedant Kumar <vsk@apple.com>2017-05-05 01:35:42 +0000
committerVedant Kumar <vsk@apple.com>2017-05-05 01:35:42 +0000
commite498e2e10756db887cf408e2561a5fb5ec2f4cbe (patch)
treeaa25f3997e14ab3bd4253fb6833ac7e40df8d790 /lib/ubsan/ubsan_handlers.cc
parentb6657afbf2e4f85db5e0f27b359543c3577a8e23 (diff)
[ubsan] Fix error summary message for ObjC BOOL invalid loads
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@302211 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/ubsan/ubsan_handlers.cc')
-rw-r--r--lib/ubsan/ubsan_handlers.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/ubsan/ubsan_handlers.cc b/lib/ubsan/ubsan_handlers.cc
index de13ab893..d6a8f52a2 100644
--- a/lib/ubsan/ubsan_handlers.cc
+++ b/lib/ubsan/ubsan_handlers.cc
@@ -410,7 +410,8 @@ static void handleLoadInvalidValue(InvalidValueData *Data, ValueHandle Val,
SourceLocation Loc = Data->Loc.acquire();
// This check could be more precise if we used different handlers for
// -fsanitize=bool and -fsanitize=enum.
- bool IsBool = (0 == internal_strcmp(Data->Type.getTypeName(), "'bool'"));
+ bool IsBool = (0 == internal_strcmp(Data->Type.getTypeName(), "'bool'")) ||
+ (0 == internal_strncmp(Data->Type.getTypeName(), "'BOOL'", 6));
ErrorType ET =
IsBool ? ErrorType::InvalidBoolLoad : ErrorType::InvalidEnumLoad;