summaryrefslogtreecommitdiff
path: root/src/s2wasm.h
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2015-12-23 11:35:11 -0800
committerAlon Zakai <alonzakai@gmail.com>2015-12-23 11:35:11 -0800
commit06952cee2becd83ab5a531b3e5649ad5f137d09f (patch)
tree4d39eabb90aabf09eaeba4d00c8a9395fd467c98 /src/s2wasm.h
parenta009c9c935c732c357f73358630bd1c55e4a87a9 (diff)
parentcb256d096ff2c6b53bb8e0175920e1c9734c476b (diff)
downloadbinaryen-06952cee2becd83ab5a531b3e5649ad5f137d09f.tar.gz
binaryen-06952cee2becd83ab5a531b3e5649ad5f137d09f.tar.bz2
binaryen-06952cee2becd83ab5a531b3e5649ad5f137d09f.zip
Merge pull request #37 from WebAssembly/extern-error
Emit error message when an unknown symbol is found
Diffstat (limited to 'src/s2wasm.h')
-rw-r--r--src/s2wasm.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/s2wasm.h b/src/s2wasm.h
index 45d943446..b732464d9 100644
--- a/src/s2wasm.h
+++ b/src/s2wasm.h
@@ -961,7 +961,12 @@ private:
Const* curr = triple.value;
Name name = triple.name;
size_t offset = triple.offset;
- curr->value = Literal(staticAddresses[name] + offset);
+ const auto &symbolAddress = staticAddresses.find(name);
+ if (symbolAddress == staticAddresses.end()) {
+ std::cerr << "Unknown symbol: " << name << '\n';
+ abort_on("Unknown symbol");
+ }
+ curr->value = Literal(symbolAddress->second + offset);
assert(curr->value.i32 > 0);
curr->type = i32;
}