diff --git a/elaborate.cc b/elaborate.cc index c572f4ef8..e01a3f980 100644 --- a/elaborate.cc +++ b/elaborate.cc @@ -1781,10 +1781,8 @@ unsigned PGModule::calculate_instance_count_(Design*des, NetScope*scope, * I am expected to make more than one gate. Figure out how many are * desired. */ if (msb_) { - need_constant_expr = true; - NetExpr*msb_exp = elab_and_eval(des, scope, msb_, -1); - NetExpr*lsb_exp = elab_and_eval(des, scope, lsb_, -1); - need_constant_expr = false; + NetExpr*msb_exp = elab_and_eval(des, scope, msb_, -1, true); + NetExpr*lsb_exp = elab_and_eval(des, scope, lsb_, -1, true); NetEConst*msb_con = dynamic_cast(msb_exp); NetEConst*lsb_con = dynamic_cast(lsb_exp);