diff --git a/include/xo/reader/exprseq_xs.hpp b/include/xo/reader/exprseq_xs.hpp index 861a6321..6ea8ff21 100644 --- a/include/xo/reader/exprseq_xs.hpp +++ b/include/xo/reader/exprseq_xs.hpp @@ -31,6 +31,10 @@ namespace xo { // ----- victory methods ----- + virtual void on_typedescr(TypeDescr /*td*/, + exprstatestack * /*p_stack*/, + rp * /*p_emit_expr*/) override; + }; } /*namespace scm*/ } /*namespace xo*/ diff --git a/src/reader/exprseq_xs.cpp b/src/reader/exprseq_xs.cpp index a127cdc8..48c69fbd 100644 --- a/src/reader/exprseq_xs.cpp +++ b/src/reader/exprseq_xs.cpp @@ -47,6 +47,16 @@ namespace xo { this->illegal_input_error(c_self_name, tk); } + + void + exprseq_xs::on_typedescr(TypeDescr /*td*/, + exprstatestack * /*p_stack*/, + rp * /*p_emit_expr*/) + { + /* unreachable - typedescr should never get delivered to exprseq */ + assert(false); + return; + } } /*namespace scm*/ } /*namespace xo*/ diff --git a/src/reader/exprstate.cpp b/src/reader/exprstate.cpp index 3e3ae9ec..7fa30923 100644 --- a/src/reader/exprstate.cpp +++ b/src/reader/exprstate.cpp @@ -413,7 +413,6 @@ namespace xo { switch (this->exs_type_) { case exprstatetype::expect_toplevel_expression_sequence: - case exprstatetype::defexpr: case exprstatetype::parenexpr: /* unreachable - redirects to define_xs */