diff --git a/src/ast/recfun_decl_plugin.h b/src/ast/recfun_decl_plugin.h index 4536f5f99..dec589bd1 100644 --- a/src/ast/recfun_decl_plugin.h +++ b/src/ast/recfun_decl_plugin.h @@ -236,8 +236,12 @@ namespace recfun { //has_def(f); + } + def& get_def(func_decl* f) { - SASSERT(m_plugin->has_def(f)); + SASSERT(has_def(f)); return m_plugin->get_def(f); } diff --git a/src/ast/rewriter/recfun_rewriter.cpp b/src/ast/rewriter/recfun_rewriter.cpp index b639bea0f..f22830e80 100644 --- a/src/ast/rewriter/recfun_rewriter.cpp +++ b/src/ast/rewriter/recfun_rewriter.cpp @@ -26,6 +26,8 @@ br_status recfun_rewriter::mk_app_core(func_decl * f, unsigned num_args, expr * if (!m.is_value(args[i])) return BR_FAILED; } + if (!m_rec.has_def(f)) + return BR_FAILED; recfun::def const& d = m_rec.get_def(f); if (!d.get_rhs()) return BR_FAILED;