3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-06-08 15:13:24 +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); current_ast_mod->children.push_back(wnode);
} }
basic_prep = true; basic_prep = true;
is_custom_type = false;
} }
break; 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: 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