Skip to content

Commit 4bc8124

Browse files
authored
Merge pull request #1443 from diffblue/typename-ext
SystemVerilog: add further $typename cases
2 parents 30f6df3 + edab352 commit 4bc8124

File tree

2 files changed

+28
-1
lines changed

2 files changed

+28
-1
lines changed

src/verilog/typename.cpp

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,26 @@ std::string verilog_typename(const typet &type)
123123
else
124124
return "bit signed[" + left(type) + ":" + right(type) + "]";
125125
}
126+
else if(type.id() == ID_verilog_byte)
127+
{
128+
return "byte";
129+
}
130+
else if(type.id() == ID_verilog_int)
131+
{
132+
return "int";
133+
}
134+
else if(type.id() == ID_verilog_integer)
135+
{
136+
return "integer";
137+
}
138+
else if(type.id() == ID_verilog_longint)
139+
{
140+
return "longint";
141+
}
142+
else if(type.id() == ID_verilog_shortint)
143+
{
144+
return "shortint";
145+
}
126146
else if(type.id() == ID_verilog_signedbv)
127147
{
128148
return "logic signed[" + left(type) + ":" + right(type) + "]";

unit/verilog/typename.cpp

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,17 @@ SCENARIO("$typename(...)")
1414
{
1515
GIVEN("various Verilog types")
1616
{
17+
REQUIRE(verilog_typename(verilog_byte_typet{}) == "byte");
1718
REQUIRE(verilog_typename(verilog_chandle_typet{}) == "chandle");
19+
REQUIRE(verilog_typename(verilog_event_typet{}) == "event");
20+
REQUIRE(verilog_typename(verilog_int_typet{}) == "int");
21+
REQUIRE(verilog_typename(verilog_integer_typet{}) == "integer");
22+
REQUIRE(verilog_typename(verilog_longint_typet{}) == "longint");
1823
REQUIRE(verilog_typename(verilog_real_typet{}) == "real");
24+
REQUIRE(verilog_typename(verilog_realtime_typet{}) == "realtime");
25+
REQUIRE(verilog_typename(verilog_shortint_typet{}) == "shortint");
26+
REQUIRE(verilog_typename(verilog_shortreal_typet{}) == "shortreal");
1927
REQUIRE(
2028
verilog_typename(verilog_signedbv_typet{10}) == "logic signed[9:0]");
21-
REQUIRE(verilog_typename(verilog_shortreal_typet{}) == "shortreal");
2229
}
2330
}

0 commit comments

Comments
 (0)