Parse non-blocking assignment delays.

This commit is contained in:
steve
1999-09-02 01:59:27 +00:00
parent 9f7eb4a935
commit 6fb7120158
4 changed files with 35 additions and 5 deletions
+10 -1
View File
@@ -19,7 +19,7 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*/
#if !defined(WINNT)
#ident "$Id: parse.y,v 1.61 1999/08/27 15:08:37 steve Exp $"
#ident "$Id: parse.y,v 1.62 1999/09/02 01:59:27 steve Exp $"
#endif
# include "parse_misc.h"
@@ -1580,6 +1580,15 @@ statement
tmp->set_lineno(@1.first_line);
$$ = tmp;
}
| lpvalue K_LE delay expression ';'
{ PExpr*del = (*$3)[0];
if ($3->count() != 1)
yyerror(@1, "Sorry, delay lists not supported here.");
PAssignNB*tmp = new PAssignNB($1,del,$4);
tmp->set_file(@1.text);
tmp->set_lineno(@1.first_line);
$$ = tmp;
}
| K_wait '(' expression ')' statement_opt
{ PEventStatement*tmp;
PEEvent*etmp = new PEEvent(NetNEvent::POSITIVE, $3);