Parse/sorry nets of named type.

This commit is contained in:
Stephen Williams 2012-05-05 16:54:21 -07:00
parent 4748f0cb5e
commit 2443884779
3 changed files with 12 additions and 7 deletions

View File

@ -325,7 +325,15 @@ TU [munpf]
\\[^ \t\b\f\r\n]+ {
yylval.text = strdupnew(yytext+1);
return IDENTIFIER; }
if (gn_system_verilog()) {
if (data_type_t*type = pform_test_type_identifier(yylval.text)) {
delete[]yylval.text;
yylval.data_type = type;
return TYPE_IDENTIFIER;
}
}
return IDENTIFIER;
}
\$([a-zA-Z0-9$_]+) {
/* The 1364-1995 timing checks. */

View File

@ -3938,6 +3938,9 @@ module_item
{ yyerror(@5, "error: Errors in net variable list.");
}
| attribute_list_opt net_type TYPE_IDENTIFIER net_variable_list ';'
{ yyerror(@2, "sorry: Nets of named types not supported."); }
/* This form doesn't have the range, but does have strengths. This
gives strength to the assignment drivers. */

View File

@ -255,12 +255,6 @@ extern void pform_makewire(const struct vlltype&li,
list<named_pexpr_t>*attr,
PWSRType rt = SR_NET);
extern void pform_makewire(const struct vlltype&li,
struct_type_t*struct_type,
list<perm_string>*names,
NetNet::PortType,
list<named_pexpr_t>*attr);
/* This form handles assignment declarations. */
extern void pform_makewire(const struct vlltype&li,
list<pform_range_t>*range,