Skip to content

Commit 105cf60

Browse files
authored
[Serialization] Simplify some code, tentatively fixing rdar://31812518. (#9017) (#9115)
1 parent be96b33 commit 105cf60

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

lib/Serialization/Serialization.cpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3805,7 +3805,7 @@ class YamlGroupInputParser {
38053805
static llvm::StringMap<pFileNameToGroupNameMap> AllMaps;
38063806

38073807
bool parseRoot(FileNameToGroupNameMap &Map, llvm::yaml::Node *Root,
3808-
const llvm::Twine &ParentName) {
3808+
StringRef ParentName) {
38093809
llvm::yaml::MappingNode *MapNode = dyn_cast<llvm::yaml::MappingNode>(Root);
38103810
if (!MapNode) {
38113811
return true;
@@ -3819,14 +3819,13 @@ class YamlGroupInputParser {
38193819
}
38203820
llvm::SmallString<16> GroupNameStorage;
38213821
StringRef GroupName = Key->getValue(GroupNameStorage);
3822-
std::unique_ptr<llvm::Twine> pCombined;
3823-
if (!ParentName.isTriviallyEmpty()) {
3824-
pCombined.reset(new llvm::Twine(ParentName.concat(Separator).
3825-
concat(GroupName)));
3822+
std::string CombinedName;
3823+
if (!ParentName.empty()) {
3824+
CombinedName = (llvm::Twine(ParentName) + Separator + GroupName).str();
38263825
} else {
3827-
pCombined.reset(new llvm::Twine(GroupName));
3826+
CombinedName = GroupName;
38283827
}
3829-
std::string CombinedName = pCombined->str();
3828+
38303829
for (llvm::yaml::Node &Entry : *Value) {
38313830
if (auto *FileEntry= dyn_cast<llvm::yaml::ScalarNode>(&Entry)) {
38323831
llvm::SmallString<16> FileNameStorage;
@@ -3837,7 +3836,7 @@ class YamlGroupInputParser {
38373836
GroupNameAndFileName.append(llvm::sys::path::stem(FileName));
38383837
Map[FileName] = GroupNameAndFileName.str();
38393838
} else if (Entry.getType() == llvm::yaml::Node::NodeKind::NK_Mapping) {
3840-
if (parseRoot(Map, &Entry, *pCombined))
3839+
if (parseRoot(Map, &Entry, CombinedName))
38413840
return true;
38423841
} else
38433842
return true;
@@ -3886,7 +3885,8 @@ class YamlGroupInputParser {
38863885
return true;
38873886
}
38883887
pFileNameToGroupNameMap pMap(new FileNameToGroupNameMap());
3889-
if (parseRoot(*pMap, Root, llvm::Twine()))
3888+
std::string Empty;
3889+
if (parseRoot(*pMap, Root, Empty))
38903890
return true;
38913891

38923892
// Save the parsed map to the owner.

0 commit comments

Comments
 (0)