Skip to content

Commit f4b127e

Browse files
authored
Merge pull request #1462 from diffblue/verilog-identifier-named-port-connection
Verilog: use `verilog_identifier_exprt` for port names
2 parents 5fdb57a + 86eece2 commit f4b127e

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

src/verilog/parser.y

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3222,6 +3222,7 @@ named_port_connection:
32223222
// are typedefs in the local scope.
32233223
'.' any_identifier '(' expression_opt ')'
32243224
{ init($$, ID_named_port_connection);
3225+
stack_expr($2).id(ID_verilog_identifier);
32253226
mto($$, $2);
32263227
mto($$, $4); }
32273228
;

src/verilog/verilog_typecheck.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -134,15 +134,16 @@ void verilog_typecheckt::typecheck_port_connections(
134134

135135
exprt &value = named_port_connection.value();
136136
const irep_idt &base_name =
137-
to_symbol_expr(named_port_connection.port()).get_identifier();
137+
to_verilog_identifier_expr(named_port_connection.port()).base_name();
138138

139139
bool found=false;
140140

141141
std::string full_identifier =
142142
id2string(symbol.module) + "." + id2string(base_name);
143143

144-
to_symbol_expr(named_port_connection.port())
145-
.set_identifier(full_identifier);
144+
named_port_connection.port() =
145+
symbol_exprt{full_identifier, typet{}}.with_source_location(
146+
named_port_connection.port());
146147

147148
if(assigned_ports.find(base_name) != assigned_ports.end())
148149
{

0 commit comments

Comments
 (0)