static bool
RenderCallIndirect(WasmRenderContext& c, AstCallIndirect& call)
{
    if (!RenderCallArgs(c, call.args()))
        return false;

    if (!RenderExpr(c, *call.index()))
        return false;

    if (!RenderIndent(c))
        return false;

    MAP_AST_EXPR(c, call);
    if (!c.buffer.append("call_indirect "))
        return false;
    return RenderRef(c, call.sig());
}
static bool
RenderCallIndirect(WasmRenderContext& c, AstCallIndirect& call)
{
    if (!c.buffer.append("(call_indirect "))
        return false;
    if (!RenderRef(c, call.sig()))
        return false;

    if (!c.buffer.append(" "))
        return false;

    if (!RenderExpr(c, *call.index()))
        return false;

    if (!c.buffer.append(" "))
        return false;
    if (!RenderCallArgs(c, call.args()))
        return false;

    if (!c.buffer.append(")"))
        return false;

    return true;
}