Fix a spurious non-local net.
During elaboration of continuous assignment that connected the rval to the lval with a part select forgot to mark the signal it created as temporary.
This commit is contained in:
parent
3d1f363be8
commit
dc6d3f4afb
|
|
@ -164,6 +164,7 @@ void PGAssign::elaborate(Design*des, NetScope*scope) const
|
||||||
NetNet*osig = new NetNet(scope, scope->local_symbol(),
|
NetNet*osig = new NetNet(scope, scope->local_symbol(),
|
||||||
NetNet::TRI, lval->vector_width());
|
NetNet::TRI, lval->vector_width());
|
||||||
osig->set_line(*this);
|
osig->set_line(*this);
|
||||||
|
osig->local_flag(true);
|
||||||
osig->data_type(rval->data_type());
|
osig->data_type(rval->data_type());
|
||||||
connect(osig->pin(0), tmp->pin(0));
|
connect(osig->pin(0), tmp->pin(0));
|
||||||
rval = osig;
|
rval = osig;
|
||||||
|
|
|
||||||
|
|
@ -2295,6 +2295,8 @@ const NetExpr* NetETernary::false_expr() const
|
||||||
|
|
||||||
ivl_variable_type_t NetETernary::expr_type() const
|
ivl_variable_type_t NetETernary::expr_type() const
|
||||||
{
|
{
|
||||||
|
ivl_assert(*this, true_val_);
|
||||||
|
ivl_assert(*this, false_val_);
|
||||||
ivl_variable_type_t tru = true_val_->expr_type();
|
ivl_variable_type_t tru = true_val_->expr_type();
|
||||||
ivl_variable_type_t fal = false_val_->expr_type();
|
ivl_variable_type_t fal = false_val_->expr_type();
|
||||||
if (tru == IVL_VT_LOGIC && fal == IVL_VT_BOOL)
|
if (tru == IVL_VT_LOGIC && fal == IVL_VT_BOOL)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue