Skip to content

Commit 284ebda

Browse files
authored
Merge pull request #625 from diffblue/default_nettype
SystemVerilog: ignore default_nettype directive
2 parents 1a325ed + 0e552c5 commit 284ebda

File tree

4 files changed

+28
-0
lines changed

4 files changed

+28
-0
lines changed
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
CORE
2+
default_nettype1.sv
3+
4+
^no properties$
5+
^EXIT=10$
6+
^SIGNAL=0$
7+
--
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
`default_nettype none
2+
`default_nettype wire
3+
4+
module main;
5+
endmodule

src/verilog/scanner.l

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -556,6 +556,7 @@ prove { VL2SMV_VERILOG_KEYWORD(TOK_PROVE); }
556556
\'line { continue; }
557557
\'file { continue; }
558558
\`line{WS}[^\n]*{NL} { line_directive(); continue; }
559+
\`default_nettype{WS}[^\n]*{NL} { /* ignore for now */ continue; }
559560
\`{Word} { preprocessor(); continue; }
560561

561562
\f { /* ignore */ }

src/verilog/verilog_preprocessor.cpp

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -608,6 +608,21 @@ void verilog_preprocessort::directive()
608608
// ignored
609609
tokenizer().skip_until_eol();
610610
}
611+
else if(text == "default_nettype")
612+
{
613+
// pass through
614+
out << '`' << text;
615+
while(true)
616+
{
617+
auto token = tokenizer().peek();
618+
if(token.is_eof())
619+
break;
620+
out << token.text;
621+
tokenizer().next_token(); // eat
622+
if(token == '\n')
623+
break;
624+
}
625+
}
611626
else
612627
{
613628
// check defines

0 commit comments

Comments
 (0)