diff options
author | Chad Rosier <mcrosier@apple.com> | 2011-06-27 22:54:29 +0000 |
---|---|---|
committer | Chad Rosier <mcrosier@apple.com> | 2011-06-27 22:54:29 +0000 |
commit | 26f448079f2dc070da637e346a0635ad3127df7d (patch) | |
tree | 1f0ab360d500fa02717b0ef3e555d09fc9302c2b /tools/lto/LTOModule.cpp | |
parent | 016c5829a5dacc3b28cb264b4b6d166552e3d568 (diff) | |
download | external_llvm-26f448079f2dc070da637e346a0635ad3127df7d.zip external_llvm-26f448079f2dc070da637e346a0635ad3127df7d.tar.gz external_llvm-26f448079f2dc070da637e346a0635ad3127df7d.tar.bz2 |
Revert r133516 "Remove some unnecessary uses of c_str()."
This was causing compile-time failures for some of the Objc and Obj-C++
benchmarks. The specific errors were of the form: "ld: duplicate symbol …"
rdar://9660124
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133955 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/lto/LTOModule.cpp')
-rw-r--r-- | tools/lto/LTOModule.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/tools/lto/LTOModule.cpp b/tools/lto/LTOModule.cpp index c899555..8f2b1f4 100644 --- a/tools/lto/LTOModule.cpp +++ b/tools/lto/LTOModule.cpp @@ -208,7 +208,7 @@ void LTOModule::addObjCClass(GlobalVariable *clgv) { if (objcClassNameFromExpression(c->getOperand(1), superclassName)) { NameAndAttributes info; StringMap<NameAndAttributes>::value_type &entry = - _undefines.GetOrCreateValue(superclassName); + _undefines.GetOrCreateValue(superclassName.c_str()); if (!entry.getValue().name) { const char *symbolName = entry.getKey().data(); info.name = symbolName; @@ -220,7 +220,7 @@ void LTOModule::addObjCClass(GlobalVariable *clgv) { std::string className; if (objcClassNameFromExpression(c->getOperand(2), className)) { StringSet::value_type &entry = - _defines.GetOrCreateValue(className); + _defines.GetOrCreateValue(className.c_str()); entry.setValue(1); NameAndAttributes info; info.name = entry.getKey().data(); @@ -243,7 +243,7 @@ void LTOModule::addObjCCategory(GlobalVariable *clgv) { NameAndAttributes info; StringMap<NameAndAttributes>::value_type &entry = - _undefines.GetOrCreateValue(targetclassName); + _undefines.GetOrCreateValue(targetclassName.c_str()); if (entry.getValue().name) return; @@ -264,7 +264,7 @@ void LTOModule::addObjCClassRef(GlobalVariable *clgv) { NameAndAttributes info; StringMap<NameAndAttributes>::value_type &entry = - _undefines.GetOrCreateValue(targetclassName); + _undefines.GetOrCreateValue(targetclassName.c_str()); if (entry.getValue().name) return; @@ -375,7 +375,7 @@ void LTOModule::addDefinedSymbol(GlobalValue *def, Mangler &mangler, // add to table of symbols NameAndAttributes info; - StringSet::value_type &entry = _defines.GetOrCreateValue(Buffer); + StringSet::value_type &entry = _defines.GetOrCreateValue(Buffer.c_str()); entry.setValue(1); StringRef Name = entry.getKey(); @@ -436,7 +436,7 @@ void LTOModule::addPotentialUndefinedSymbol(GlobalValue *decl, mangler.getNameWithPrefix(name, decl, false); StringMap<NameAndAttributes>::value_type &entry = - _undefines.GetOrCreateValue(name); + _undefines.GetOrCreateValue(name.c_str()); // we already have the symbol if (entry.getValue().name) |