summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CodeGenModule.cpp
diff options
context:
space:
mode:
authorNick Lewycky <nicholas@mxc.ca>2012-01-18 03:41:19 +0000
committerNick Lewycky <nicholas@mxc.ca>2012-01-18 03:41:19 +0000
commit9ed5b156a27a972ca1423aa25638f239cdc2ffc0 (patch)
tree34d86d8ec8f444c5df09f6dba94bf805f8765f2e /clang/lib/CodeGen/CodeGenModule.cpp
parent9cf080fba3bd8a72e119db43f8a05cf11ce709f0 (diff)
downloadbcm5719-llvm-9ed5b156a27a972ca1423aa25638f239cdc2ffc0.tar.gz
bcm5719-llvm-9ed5b156a27a972ca1423aa25638f239cdc2ffc0.zip
Fix a string over-run detected by ASAN.
llvm-svn: 148375
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
-rw-r--r--clang/lib/CodeGen/CodeGenModule.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/CodeGen/CodeGenModule.cpp b/clang/lib/CodeGen/CodeGenModule.cpp
index 4f074eb1785..c2c4d0887b7 100644
--- a/clang/lib/CodeGen/CodeGenModule.cpp
+++ b/clang/lib/CodeGen/CodeGenModule.cpp
@@ -883,8 +883,9 @@ namespace {
unsigned BuiltinID = FD->getBuiltinID();
if (!BuiltinID)
return true;
- const char *BuiltinName = BI.GetName(BuiltinID) + strlen("__builtin_");
- if (Name == BuiltinName) {
+ StringRef BuiltinName = BI.GetName(BuiltinID);
+ if (BuiltinName.startswith("__builtin_") &&
+ Name == BuiltinName.slice(strlen("__builtin_"), StringRef::npos)) {
Result = true;
return false;
}
OpenPOWER on IntegriCloud