Remove nested $fork handling from union detection

Removed logic for nested $fork handling in union struct detection.
This commit is contained in:
Akash Levy 2026-05-27 03:03:38 -07:00 committed by GitHub
parent 7e64b6855b
commit 10a4056e3b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 0 additions and 20 deletions

View File

@ -175,26 +175,6 @@ void FstData::extractVarNames()
while ((h = fstReaderIterateHier(ctx))) {
switch (h->htyp) {
case FST_HT_SCOPE: {
// Handle tracking for potential union structs with $fork.
if (!detect_union && h->u.scope.typ == FST_ST_VCD_FORK) {
detect_union = true;
fork_parent_scope = fst_scope_name;
fork_name = h->u.scope.name;
fork_vars.clear();
} else if (detect_union && h->u.scope.typ == FST_ST_VCD_STRUCT) {
// Signal that a nested $fork can not be a candidate for union struct detection.
log_warning("Nested $fork '%s' inside $fork '%s'; "
"abandoning union detection for this scope...\n",
h->u.scope.name, fork_name.c_str());
for (auto &v : fork_vars) registerVar(v);
detect_union = false;
fork_vars.clear();
}
// Push the scope onto the stack to 'descend' into the hierarchy.
fst_scope_name = fstReaderPushScope(ctx, h->u.scope.name, NULL);
break;
}
case FST_HT_SCOPE: {
// Handle tracking for potential union structs with $fork.
if (!detect_union && h->u.scope.typ == FST_ST_VCD_FORK) {