summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorAlexey Samsonov <vonosmas@gmail.com>2014-12-04 23:00:50 +0000
committerAlexey Samsonov <vonosmas@gmail.com>2014-12-04 23:00:50 +0000
commit4c79708a34757b41ec378cb29524c0a0a23fd7ec (patch)
treefc10e4c3013372585d2f418f5815e80422ac47a4 /llvm
parentda7e03f1bf107c7d86da1f864ffdefd310df5b85 (diff)
downloadbcm5719-llvm-4c79708a34757b41ec378cb29524c0a0a23fd7ec.tar.gz
bcm5719-llvm-4c79708a34757b41ec378cb29524c0a0a23fd7ec.zip
Revert "Fix UBSan report in StringMap implementation."
This reverts commit r223402. Some bots fail with -Winvalid-offsetof warning. llvm-svn: 223407
Diffstat (limited to 'llvm')
-rw-r--r--llvm/include/llvm/ADT/StringMap.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/llvm/include/llvm/ADT/StringMap.h b/llvm/include/llvm/ADT/StringMap.h
index 06afe842691..2feb2ab0074 100644
--- a/llvm/include/llvm/ADT/StringMap.h
+++ b/llvm/include/llvm/ADT/StringMap.h
@@ -182,7 +182,10 @@ public:
/// GetStringMapEntryFromValue - Given a value that is known to be embedded
/// into a StringMapEntry, return the StringMapEntry itself.
static StringMapEntry &GetStringMapEntryFromValue(ValueTy &V) {
- char *Ptr = reinterpret_cast<char *>(&V) - offsetof(StringMapEntry, second);
+ StringMapEntry *EPtr = 0;
+ char *Ptr = reinterpret_cast<char*>(&V) -
+ (reinterpret_cast<char*>(&EPtr->second) -
+ reinterpret_cast<char*>(EPtr));
return *reinterpret_cast<StringMapEntry*>(Ptr);
}
static const StringMapEntry &GetStringMapEntryFromValue(const ValueTy &V) {
OpenPOWER on IntegriCloud