diff options
author | Nick Lewycky <nicholas@mxc.ca> | 2012-01-18 03:41:19 +0000 |
---|---|---|
committer | Nick Lewycky <nicholas@mxc.ca> | 2012-01-18 03:41:19 +0000 |
commit | 9ed5b156a27a972ca1423aa25638f239cdc2ffc0 (patch) | |
tree | 34d86d8ec8f444c5df09f6dba94bf805f8765f2e /clang/lib/CodeGen/CodeGenModule.cpp | |
parent | 9cf080fba3bd8a72e119db43f8a05cf11ce709f0 (diff) | |
download | bcm5719-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.cpp | 5 |
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; } |