summaryrefslogtreecommitdiff
path: root/src/wasm/wasm-s-parser.cpp
diff options
context:
space:
mode:
authorAlon Zakai (kripken) <alonzakai@gmail.com>2017-05-29 16:41:18 -0700
committerAlon Zakai <alonzakai@gmail.com>2017-06-01 13:17:44 -0700
commita2822077c5f92a11e02fba2aba83495254027a31 (patch)
tree08cdabf0d85c0bd52b1dde27e0dde2a74239a196 /src/wasm/wasm-s-parser.cpp
parentf53de1118e63f091494a8b106f6fe8abbd3f07ae (diff)
downloadbinaryen-a2822077c5f92a11e02fba2aba83495254027a31.tar.gz
binaryen-a2822077c5f92a11e02fba2aba83495254027a31.tar.bz2
binaryen-a2822077c5f92a11e02fba2aba83495254027a31.zip
handle duplicate functions in s-expr parsing
Diffstat (limited to 'src/wasm/wasm-s-parser.cpp')
-rw-r--r--src/wasm/wasm-s-parser.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/wasm/wasm-s-parser.cpp b/src/wasm/wasm-s-parser.cpp
index 831ad41c3..af77d75b6 100644
--- a/src/wasm/wasm-s-parser.cpp
+++ b/src/wasm/wasm-s-parser.cpp
@@ -600,6 +600,7 @@ void SExpressionWasmBuilder::parseFunction(Element& s, bool preParseImport) {
if (currFunction->result != result) throw ParseException("bad func declaration", s.line, s.col);
currFunction->body = body;
currFunction->type = type;
+ if (wasm.getFunctionOrNull(currFunction->name)) throw ParseException("duplicate function", s.line, s.col);
wasm.addFunction(currFunction.release());
currLocalTypes.clear();
nameMapper.clear();