diff --git a/vhdlpp/expression.h b/vhdlpp/expression.h index 50c2e8e2c..595734737 100644 --- a/vhdlpp/expression.h +++ b/vhdlpp/expression.h @@ -168,6 +168,7 @@ class ExpUnary : public Expression { inline const Expression*peek_operand() const { return operand1_; } const VType*fit_type(Entity*ent, ScopeBase*scope, const VTypeArray*atype) const; + const VType*probe_type(Entity*ent, ScopeBase*scope) const; int elaborate_expr(Entity*ent, ScopeBase*scope, const VType*ltype); void visit(ExprVisitor& func); diff --git a/vhdlpp/expression_elaborate.cc b/vhdlpp/expression_elaborate.cc index 79fa6c04c..fbe7f0ec2 100644 --- a/vhdlpp/expression_elaborate.cc +++ b/vhdlpp/expression_elaborate.cc @@ -376,6 +376,11 @@ const VType*ExpUnary::fit_type(Entity*ent, ScopeBase*scope, const VTypeArray*aty return operand1_->fit_type(ent, scope, atype); } +const VType*ExpUnary::probe_type(Entity*ent, ScopeBase*scope) const +{ + return operand1_->probe_type(ent, scope); +} + int ExpUnary::elaborate_expr(Entity*ent, ScopeBase*scope, const VType*ltype) { ivl_assert(*this, ltype != 0);