3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-06-09 07:33:25 +00:00

Merge pull request #5143 from YosysHQ/krys/typedef_struct_global

SystemVerilog: Fix typedef struct in global space
This commit is contained in:
KrystalDelusion 2025-05-31 09:59:26 +12:00 committed by GitHub
commit 545753cc5a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 15 additions and 1 deletions

View file

@ -1433,6 +1433,7 @@ bool AstNode::simplify(bool const_fold, int stage, int width_hint, bool sign_hin
current_ast_mod->children.push_back(wnode);
}
basic_prep = true;
is_custom_type = false;
}
break;

View file

@ -1855,7 +1855,7 @@ struct_decl:
}
;
struct_type: struct_union { astbuf2 = $1; } struct_body { $$ = astbuf2; }
struct_type: struct_union { astbuf2 = $1; astbuf2->is_custom_type = true; } struct_body { $$ = astbuf2; }
;
struct_union:

View file

@ -0,0 +1,13 @@
read_verilog -sv << EOF
typedef struct packed {
logic y;
logic x;
} Vec_2_B;
module top;
Vec_2_B two_dee;
wire foo = two_dee.x;
endmodule
EOF