sv: support for parameters without default values
authorZachary Snow <zach@zachjs.com>
Tue, 2 Mar 2021 15:43:53 +0000 (10:43 -0500)
committerZachary Snow <zach@zachjs.com>
Tue, 2 Mar 2021 15:43:53 +0000 (10:43 -0500)
commitd738b2c1272b02d8799e9feda83b1eae8ba10c07
tree5edd76126d7c9969f3dfd695e7fad415d364fec9
parent375af199ef4df45ccf02c66e0171b4282c6cf1eb
sv: support for parameters without default values

- Modules with a parameter without a default value will be automatically
  deferred until the hierarchy pass
- Allows for parameters without defaults as module items, rather than
  just int the `parameter_port_list`, despite being forbidden in the LRM
- Check for parameters without defaults that haven't been overriden
- Add location info to parameter/localparam declarations
12 files changed:
frontends/ast/ast.cc
frontends/verilog/verilog_parser.y
tests/verilog/localparam_no_default_1.ys [new file with mode: 0644]
tests/verilog/localparam_no_default_2.ys [new file with mode: 0644]
tests/verilog/param_no_default.sv [new file with mode: 0644]
tests/verilog/param_no_default.ys [new file with mode: 0644]
tests/verilog/param_no_default_not_svmode.ys [new file with mode: 0644]
tests/verilog/param_no_default_unbound_1.ys [new file with mode: 0644]
tests/verilog/param_no_default_unbound_2.ys [new file with mode: 0644]
tests/verilog/param_no_default_unbound_3.ys [new file with mode: 0644]
tests/verilog/param_no_default_unbound_4.ys [new file with mode: 0644]
tests/verilog/param_no_default_unbound_5.ys [new file with mode: 0644]