Add ALWNEVER warning, for always @* that never execute (#6291) (#6303)

This commit is contained in:
Wilson Snyder
2025-08-18 12:00:53 -04:00
committed by GitHub
parent 53c59e7ac7
commit c90f9e53b7
23 changed files with 192 additions and 42 deletions
+4 -1
View File
@@ -905,8 +905,11 @@ class TimingControlVisitor final : public VNVisitor {
void visit(AstEventControl* nodep) override {
// Do not allow waiting on local named events, as they get enqueued for clearing, but can
// go out of scope before that happens
if (!nodep->sentreep())
if (!nodep->sentreep()) {
nodep->v3warn(E_UNSUPPORTED, "Unsupported: no sense equation (@*)");
VL_DO_DANGLING(pushDeletep(nodep->unlinkFrBack()), nodep);
return;
}
FileLine* const flp = nodep->fileline();
// Relink child statements after the event control
if (nodep->stmtsp()) nodep->addNextHere(nodep->stmtsp()->unlinkFrBackWithNext());