[llvm-commits] [llvm] r133955 - /llvm/trunk/tools/lto/LTOModule.cpp
Chad Rosier
mcrosier at apple.com
Mon Jun 27 15:54:29 PDT 2011
Author: mcrosier
Date: Mon Jun 27 17:54:29 2011
New Revision: 133955
URL: http://llvm.org/viewvc/llvm-project?rev=133955&view=rev
Log:
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
Modified:
llvm/trunk/tools/lto/LTOModule.cpp
Modified: llvm/trunk/tools/lto/LTOModule.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/lto/LTOModule.cpp?rev=133955&r1=133954&r2=133955&view=diff
==============================================================================
--- llvm/trunk/tools/lto/LTOModule.cpp (original)
+++ llvm/trunk/tools/lto/LTOModule.cpp Mon Jun 27 17:54:29 2011
@@ -208,7 +208,7 @@
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 @@
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 @@
NameAndAttributes info;
StringMap<NameAndAttributes>::value_type &entry =
- _undefines.GetOrCreateValue(targetclassName);
+ _undefines.GetOrCreateValue(targetclassName.c_str());
if (entry.getValue().name)
return;
@@ -264,7 +264,7 @@
NameAndAttributes info;
StringMap<NameAndAttributes>::value_type &entry =
- _undefines.GetOrCreateValue(targetclassName);
+ _undefines.GetOrCreateValue(targetclassName.c_str());
if (entry.getValue().name)
return;
@@ -375,7 +375,7 @@
// 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 @@
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)
More information about the llvm-commits
mailing list