diff --git a/elab_sig.cc b/elab_sig.cc index d2923b007..46ba52071 100644 --- a/elab_sig.cc +++ b/elab_sig.cc @@ -996,10 +996,6 @@ NetNet* PWire::elaborate_sig(Design*des, NetScope*scope) const << ". Now check for consistency." << endl; } - /* If we find errors here, then give up on this signal. */ - if (bad_range) - return 0; - /* We have a port size error */ if (port_set_ && net_set_ && !test_ranges_eeq(plist, nlist)) { diff --git a/netmisc.cc b/netmisc.cc index 9ec560c1a..5494cb6e9 100644 --- a/netmisc.cc +++ b/netmisc.cc @@ -972,6 +972,10 @@ bool evaluate_ranges(Design*des, NetScope*scope, delete texpr; + /* Error recovery */ + if (bad_lsb) use_lsb = 0; + if (bad_msb) use_msb = use_lsb; + llist.push_back(netrange_t(use_msb, use_lsb)); }