diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/analysis/collections.cpp | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/src/analysis/collections.cpp b/src/analysis/collections.cpp index 12fcd7a..def9573 100644 --- a/src/analysis/collections.cpp +++ b/src/analysis/collections.cpp @@ -283,6 +283,11 @@ void addLinkedVar(WalkItem &wi, if (isIn(var, wi.linkedVars)) { StringSet linked = wi.linkedVars[var]; + if (linked.empty()) + { + wi.linkedVars.erase(var); + return; + } std::string newParent = *(linked.begin()); wi.linkedReverseVars.erase(newParent); wi.linkedVars[newParent] = linked; @@ -300,16 +305,6 @@ void addLinkedVar(WalkItem &wi, wi.linkedReverseVars[it3] = newParent; } } -/* - StringSet oldLinked = wi.linkedVars[var]; - wi.linkedVars.erase(var); - wi.linkedVars[parent].insert(oldLinked.begin(), - oldLinked.end()); - FOR_EACH (it, oldLinked) - { - wi.linkedReverseVars[it] = parent; - } -*/ } } |