Merge pull request #1431 from larsclausen/event-variable-type-id-shadow
Support event names shadowing type identifiers
This commit is contained in:
commit
e02a0bc2ec
|
|
@ -0,0 +1,31 @@
|
||||||
|
// Check that event names can shadow visible type identifiers.
|
||||||
|
|
||||||
|
typedef int T;
|
||||||
|
|
||||||
|
module test;
|
||||||
|
|
||||||
|
reg failed;
|
||||||
|
reg seen;
|
||||||
|
|
||||||
|
event T;
|
||||||
|
|
||||||
|
initial begin
|
||||||
|
failed = 1'b0;
|
||||||
|
seen = 1'b0;
|
||||||
|
|
||||||
|
#1 -> T;
|
||||||
|
#1;
|
||||||
|
|
||||||
|
if (seen !== 1'b1) begin
|
||||||
|
$display("FAILED(%0d). Event T was not triggered", `__LINE__);
|
||||||
|
failed = 1'b1;
|
||||||
|
end
|
||||||
|
|
||||||
|
if (!failed) begin
|
||||||
|
$display("PASSED");
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
always @T seen = 1'b1;
|
||||||
|
|
||||||
|
endmodule
|
||||||
|
|
@ -389,6 +389,7 @@ sv_type_identifier_ams_name_fields vvp_tests/sv_type_identifier_ams_name_fields.
|
||||||
sv_type_identifier_block_label_name vvp_tests/sv_type_identifier_block_label_name.json
|
sv_type_identifier_block_label_name vvp_tests/sv_type_identifier_block_label_name.json
|
||||||
sv_type_identifier_config_name vvp_tests/sv_type_identifier_config_name.json
|
sv_type_identifier_config_name vvp_tests/sv_type_identifier_config_name.json
|
||||||
sv_type_identifier_enum_item_name vvp_tests/sv_type_identifier_enum_item_name.json
|
sv_type_identifier_enum_item_name vvp_tests/sv_type_identifier_enum_item_name.json
|
||||||
|
sv_type_identifier_event_name vvp_tests/sv_type_identifier_event_name.json
|
||||||
sv_type_identifier_foreach_name vvp_tests/sv_type_identifier_foreach_name.json
|
sv_type_identifier_foreach_name vvp_tests/sv_type_identifier_foreach_name.json
|
||||||
sv_type_identifier_fork_label_name vvp_tests/sv_type_identifier_fork_label_name.json
|
sv_type_identifier_fork_label_name vvp_tests/sv_type_identifier_fork_label_name.json
|
||||||
sv_type_identifier_function_name vvp_tests/sv_type_identifier_function_name.json
|
sv_type_identifier_function_name vvp_tests/sv_type_identifier_function_name.json
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
"type" : "normal",
|
||||||
|
"source" : "sv_type_identifier_event_name.v",
|
||||||
|
"iverilog-args" : [ "-g2005-sv" ]
|
||||||
|
}
|
||||||
2
parse.y
2
parse.y
|
|
@ -6368,7 +6368,7 @@ dimensions
|
||||||
;
|
;
|
||||||
|
|
||||||
event_variable
|
event_variable
|
||||||
: IDENTIFIER dimensions_opt
|
: identifier_name dimensions_opt
|
||||||
{ if ($2) {
|
{ if ($2) {
|
||||||
yyerror(@2, "sorry: event arrays are not supported.");
|
yyerror(@2, "sorry: event arrays are not supported.");
|
||||||
delete $2;
|
delete $2;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue