Section 11.23,
19.7, 20.2, A.1.4, Syntax 20-1
Parameter port lists
In section A.1.4, REPLACE
parameter_port_list ::= # ( parameter_declaration { , parameter_declaration } )
WITH
parameter_port_list ::=
# ( list_of_param_assignments { , parameter_port_declaration } )
| # ( parameter_port_declaration { , parameter_port_declaration } )
parameter_port_declaration ::=
parameter_declaration
| data_type list_of_param_assignments
| type list_of_type_assignments
and ADD the productions for parameter_port_list and parameter_port_declaration to Syntax 20-1 along with a comment that
// from Annex A.1.4
In 20.2, REPLACE
A module or interface can have parameters
WITH
A module, interface, program or class can have parameters
In 20.2, APPEND the following text to the end of the section
SystemVerilog
also adds the ability to omit the parameter keyword in a
parameter port list.
class vector #(size = 1);
logic [size-1:0] v;
endclass
typedef vector#(16) word;
interface simple_bus #(AWIDTH = 64, type
T = word)
(input bit clk) ;
endinterface
In 11.23, in the examples, REPLACE both occurrences of
#(parameter int size = 1;)
WITH
#(int size = 1)
and REPLACE
#(parameter type T = int;)
WITH
#(type T = int)
In 19.7, REPLACE
#(parameter AWIDTH = 8, DWIDTH = 8)
WITH
#(AWIDTH = 8, DWIDTH = 8)