@@ -606,31 +606,33 @@ module_nonansi_header:
606
606
attribute_instance_brace
607
607
module_keyword
608
608
module_identifier_with_scope
609
+ package_import_declaration_brace
609
610
parameter_port_list_opt
610
611
list_of_ports_opt ' ;'
611
612
{
612
613
init ($$); stack_expr($$ ).operands().resize(5 );
613
614
stack_expr ($$).operands()[0].swap(stack_expr($1 ));
614
615
stack_expr ($$).operands()[1].swap(stack_expr($2 ));
615
616
stack_expr ($$).operands()[2].swap(stack_expr($3 ));
616
- stack_expr ($$).operands()[3].swap(stack_expr($4 ));
617
- stack_expr ($$).operands()[4].swap(stack_expr($5 ));
617
+ stack_expr ($$).operands()[3].swap(stack_expr($5 ));
618
+ stack_expr ($$).operands()[4].swap(stack_expr($6 ));
618
619
}
619
620
;
620
621
621
622
module_ansi_header :
622
623
attribute_instance_brace
623
624
module_keyword
624
625
module_identifier_with_scope
626
+ package_import_declaration_brace
625
627
parameter_port_list_opt
626
628
list_of_port_declarations ' ;'
627
629
{
628
630
init ($$); stack_expr($$ ).operands().resize(5 );
629
631
stack_expr ($$).operands()[0].swap(stack_expr($1 ));
630
632
stack_expr ($$).operands()[1].swap(stack_expr($2 ));
631
633
stack_expr ($$).operands()[2].swap(stack_expr($3 ));
632
- stack_expr ($$).operands()[3].swap(stack_expr($4 ));
633
- stack_expr ($$).operands()[4].swap(stack_expr($5 ));
634
+ stack_expr ($$).operands()[3].swap(stack_expr($5 ));
635
+ stack_expr ($$).operands()[4].swap(stack_expr($6 ));
634
636
}
635
637
;
636
638
@@ -1117,6 +1119,33 @@ data_declaration:
1117
1119
addswap ($$, ID_type, $2 );
1118
1120
swapop ($$, $3 ); }
1119
1121
| type_declaration
1122
+ | package_import_declaration
1123
+ ;
1124
+
1125
+ package_import_declaration_brace :
1126
+ /* Optional */
1127
+ { init($$ ); }
1128
+ | package_import_declaration_brace package_import_declaration
1129
+ { $$ = $1 ; mts($$ , $2 ); }
1130
+ ;
1131
+
1132
+ package_import_declaration :
1133
+ TOK_IMPORT package_import_item_brace ' ;'
1134
+ { init($$ , ID_verilog_package_import); swapop($$ , $2 ); }
1135
+ ;
1136
+
1137
+ package_import_item_brace :
1138
+ package_import_item
1139
+ { init($$ ); mts($$ , $1 ); }
1140
+ | package_import_item_brace ' ,' package_import_item
1141
+ { $$ = $1 ; mts($$ , $3 ); }
1142
+ ;
1143
+
1144
+ package_import_item :
1145
+ package_identifier " ::" identifier
1146
+ { init($$ , ID_verilog_import_item); mto($$ , $1 ); mto($$ , $3 ); }
1147
+ | package_identifier " ::" " *"
1148
+ { init($$ , ID_verilog_import_item); mto($$ , $1 ); }
1120
1149
;
1121
1150
1122
1151
genvar_declaration :
0 commit comments