summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/passes/Print.cpp4
-rw-r--r--src/wasm/wasm-s-parser.cpp2
2 files changed, 3 insertions, 3 deletions
diff --git a/src/passes/Print.cpp b/src/passes/Print.cpp
index 491e44ca2..8c7b221fd 100644
--- a/src/passes/Print.cpp
+++ b/src/passes/Print.cpp
@@ -1860,8 +1860,8 @@ struct PrintExpressionContents
void visitPop(Pop* curr) {
prepareColor(o) << "pop";
for (auto type : curr->type) {
- assert(type.isBasic() && "TODO: print and parse compound types");
- o << " " << type;
+ o << ' ';
+ printType(o, type, wasm);
}
restoreNormalColor(o);
}
diff --git a/src/wasm/wasm-s-parser.cpp b/src/wasm/wasm-s-parser.cpp
index 019049cb1..c9c8235e2 100644
--- a/src/wasm/wasm-s-parser.cpp
+++ b/src/wasm/wasm-s-parser.cpp
@@ -2159,7 +2159,7 @@ Expression* SExpressionWasmBuilder::makePop(Element& s) {
auto ret = allocator.alloc<Pop>();
std::vector<Type> types;
for (size_t i = 1; i < s.size(); ++i) {
- types.push_back(stringToType(s[i]->str()));
+ types.push_back(elementToType(*s[i]));
}
ret->type = Type(types);
ret->finalize();