From: James A. Markevitch (jam@magic.com)
Date: Sun Nov 30 2003 - 18:40:00 PST
The following reply was made to PR errata/233; it has been noted by GNATS.
From: "James A. Markevitch" <jam@magic.com>
To: etf-bugs@boyd.com
Cc:
Subject: Re: errata/233: 12.3.4: nonport declarations for identifiers mentioned in list_of_port_declarations
Date: Sun, 30 Nov 2003 18:43:11 -0800 (PST)
The comments below are intended to discuss legal syntax. Once that has
been generally agreed upon, I will write the proposed changes to the text.
> In 12.3.4, about the new ANSI-like list of port declarations
> style, the example notes that
>
> "It is illegal to redeclare any ports of the module
> in the body of the module"
>
> It's clear from the BNF, that port declarations may
> not be included in the body of the module. But what about
> nonport declarations, such as reg declarations, for
> identifiers already mentioned in the list of port declarations?
>
> Which, if any, of the following examples are legal?
>
> module m1( input in, output reg signed out );
> wire in;
> reg signed out;
> ...
Illegal. Both the "wire" and "reg" statements are illegal, since the
signals were declared using ANSI C-like declarations.
> module m2( input in, output out );
> wire in;
> reg signed out;
> ...
Illegal for the same reason.
> module m3( input in, output out );
> reg [15:0] out ;
> ...
Illegal for the same reason.
> According 12.3.4, "Each declared port provides the complete
> information about the port."
>
> -- Brad
James Markevitch
This archive was generated by hypermail 2.1.4
: Sun Nov 30 2003 - 18:40:03 PST
and
sponsored by Boyd Technology, Inc.