File tree Expand file tree Collapse file tree 3 files changed +14
-3
lines changed
regression/verilog/typedef Expand file tree Collapse file tree 3 files changed +14
-3
lines changed Original file line number Diff line number Diff line change 11# EBMC 5.7
22
33* Verilog: `elsif preprocessor directive
4+ * Verilog: fix for named generate blocks
45* LTL/SVA to Buechi with --buechi
56
67# EBMC 5.6
Original file line number Diff line number Diff line change @@ -23,6 +23,13 @@ module main();
2323 end
2424 endtask
2525
26+ // module item inside a named generate block
27+ if (1 ) begin : some_block
28+ typedef logic some_type ;
29+ some_type some_var;
30+ end // checks
31+
32+ // named procedural block
2633 always @ my_type2_var begin : named_block
2734 typedef bit my_type5 ;
2835 my_type5 my_type5_var;
Original file line number Diff line number Diff line change @@ -3163,9 +3163,12 @@ generate_block:
31633163 generate_item
31643164 | TOK_BEGIN generate_item_brace TOK_END
31653165 { init ($$, ID_generate_block); swapop ($$, $2 ); }
3166- | TOK_BEGIN TOK_COLON generate_block_identifier generate_item_brace TOK_END
3167- { init ($$, ID_generate_block);
3168- swapop ($$, $4 );
3166+ | TOK_BEGIN TOK_COLON generate_block_identifier
3167+ { push_scope (stack_expr ($3 ).id (), " ." , verilog_scopet::BLOCK); }
3168+ generate_item_brace TOK_END
3169+ { pop_scope ();
3170+ init ($$, ID_generate_block);
3171+ swapop ($$, $5 );
31693172 stack_expr ($$).set (ID_base_name, stack_expr ($3 ).id ()); }
31703173 ;
31713174
You can’t perform that action at this time.
0 commit comments