diff --git a/elaborate.cc b/elaborate.cc index 9548e1ebe..ec436b9b0 100644 --- a/elaborate.cc +++ b/elaborate.cc @@ -189,11 +189,12 @@ void PGAssign::elaborate(Design*des, NetScope*scope) const need_driver_flag = false; } - /* When we are given a non-default strength value and if the - * drive source is a bit, part or indexed select we need to - * add a driver (BUFZ) to convey the strength information. */ + /* When we are given a non-default strength value and if the drive + * source is a bit, part, indexed select or concatenation we need + * to add a driver (BUFZ) to convey the strength information. */ if ((drive0 != Link::STRONG || drive1 != Link::STRONG) && - (dynamic_cast(rval_expr))) { + ((dynamic_cast(rval_expr)) || + (dynamic_cast(rval_expr)))) { need_driver_flag = true; }