From b1613e99e6ffe4aa79ff02c7279bd7cd3b97631d Mon Sep 17 00:00:00 2001 From: Stephen Williams Date: Tue, 19 Mar 2013 19:57:28 -0700 Subject: [PATCH] Elaborate function methods' this argument. --- elab_expr.cc | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/elab_expr.cc b/elab_expr.cc index 157e1982a..5aa7f67ab 100644 --- a/elab_expr.cc +++ b/elab_expr.cc @@ -2025,8 +2025,18 @@ NetExpr* PECallFunction::elaborate_expr_method_(Design*des, NetScope*scope, ivl_assert(*this, res); vectorparms; - cerr << get_fileline() << ": PECallFunction::elaborate_expr_method_: " - << "Stub arguments to the function method." << endl; + + NetESignal*ethis = new NetESignal(net); + ethis->set_line(*this); + parms.push_back(ethis); + + if (parms_.size() > 0) { + cerr << get_fileline() << ": sorry: " + << "Arguments (" << parms_.size() << ")" + << " to function method " << func->basename() + << " not supported." << endl; + des->errors += 1; + } NetESignal*eres = new NetESignal(res); NetEUFunc*call = new NetEUFunc(scope, func, eres, parms, false);