diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/passes/ReorderLocals.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/passes/ReorderLocals.cpp b/src/passes/ReorderLocals.cpp index 9eea0b73c..7b4c99e78 100644 --- a/src/passes/ReorderLocals.cpp +++ b/src/passes/ReorderLocals.cpp @@ -132,8 +132,9 @@ struct ReorderLocals : public WalkerPass<PostWalker<ReorderLocals>> { curr->localNames.clear(); curr->localIndices.clear(); for (size_t i = 0; i < newToOld.size(); i++) { - if (newToOld[i] < oldLocalNames.size()) { - auto old = oldLocalNames[newToOld[i]]; + auto iter = oldLocalNames.find(newToOld[i]); + if (iter != oldLocalNames.end()) { + auto old = iter->second; curr->localNames[i] = old; curr->localIndices[old] = i; } |