summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/wasm.h17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/wasm.h b/src/wasm.h
index d81f4087a..13f1d29a7 100644
--- a/src/wasm.h
+++ b/src/wasm.h
@@ -468,12 +468,18 @@ public:
};
-class Call : public Expression {
+class CallBase : public Expression {
public:
- Call() : Expression(CallId) {}
+ CallBase(Id which) : Expression(which) {}
- Name target;
ExpressionList operands;
+};
+
+class Call : public CallBase {
+public:
+ Call() : CallBase(CallId) {}
+
+ Name target;
std::ostream& printBody(std::ostream &o, unsigned indent) {
o << target;
@@ -549,13 +555,12 @@ public:
}
};
-class CallIndirect : public Expression {
+class CallIndirect : public CallBase {
public:
- CallIndirect() : Expression(CallIndirectId) {}
+ CallIndirect() : CallBase(CallIndirectId) {}
FunctionType *fullType;
Expression *target;
- ExpressionList operands;
std::ostream& doPrint(std::ostream &o, unsigned indent) {
printOpening(o, "call_indirect ") << fullType->name;