veripool / verilog-perl

Verilog parser, preprocessor, and related tools for the Verilog-Perl package
https://www.veripool.org/verilog-perl
Artistic License 2.0
121 stars 34 forks source link

Support ranged instances #1393

Closed veripoolbot closed 5 years ago

veripoolbot commented 5 years ago

Author Name: Ed Carstens Original Redmine Issue: 1393 from https://www.veripool.org

Original Assignee: Wilson Snyder (@wsnyder)


(Sorry, I haven't had the latest version installed yet, but I did not see a fix for this issue since 3.406.)

The parser did not correctly parse a parameterized iterated instance (without any port connections):

@sub1 #(.WIDTH(8)) SUB1[1:0](); @

This is being used by a connect script I wrote. I verified the syntax was recognized okay by irun (Cadence SV simulator), just with the expected warnings for the unconnected instance. The parser returned "[1:0], .WIDTH(8)" from a call to cell->params...

@foreach my $cell ($top->cells_sorted) { &debug('ewc1:' . $cell->params) ... @---------------------- OUTPUT

@ewc1:[1:0], .WIDTH(8) @

veripoolbot commented 5 years ago

Original Redmine Comment Author Name: Wilson Snyder (@wsnyder) Original Date: 2019-01-25T00:03:27Z


Indeed, fixed in git and released as 3.458.