diff options
Diffstat (limited to 'src/wasm/wasm.cpp')
-rw-r--r-- | src/wasm/wasm.cpp | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/wasm/wasm.cpp b/src/wasm/wasm.cpp index 6db11cc7d..f4562fe64 100644 --- a/src/wasm/wasm.cpp +++ b/src/wasm/wasm.cpp @@ -578,25 +578,26 @@ bool Function::isVar(Index index) { } bool Function::hasLocalName(Index index) const { - return index < localNames.size() && localNames[index].is(); + return localNames.find(index) != localNames.end(); } Name Function::getLocalName(Index index) { - assert(hasLocalName(index)); - return localNames[index]; + return localNames.at(index); } Name Function::getLocalNameOrDefault(Index index) { - if (hasLocalName(index)) { - return localNames[index]; + auto nameIt = localNames.find(index); + if (nameIt != localNames.end()) { + return nameIt->second; } // this is an unnamed local return Name(); } Name Function::getLocalNameOrGeneric(Index index) { - if (hasLocalName(index)) { - return localNames[index]; + auto nameIt = localNames.find(index); + if (nameIt != localNames.end()) { + return nameIt->second; } return Name::fromInt(index); } |