Re: errata/217: PROPOSAL - Note that task/func params can only be overridden by defparams

From: Brad Pierce (Brad.Pierce@synopsys.com)
Date: Wed Sep 10 2003 - 09:30:01 PDT

  • Next message: Alec Stanculescu: "Re: enhancement/466: Separate Compilation"

    Precedence: bulk

    The following reply was made to PR errata/217; it has been noted by GNATS.

    From: "Brad Pierce" <Brad.Pierce@synopsys.com>
    To: <etf-bugs@boyd.com>
    Cc:
    Subject: Re: errata/217: PROPOSAL - Note that task/func params can only be overridden by defparams
    Date: Wed, 10 Sep 2003 09:21:35 -0700

     Exactly.
     
       module m #(parameter P=2) ();
       parameter Q = 3 ; // definitely a localparam
     
       task t ;
       parameter t_p = 3 ; // localparam or parameter?
       endtask
     
       ...
       endmodule
     
     A possibility is that 3.11.1 was only intended to
     treat top-level 'parameter' declarations as 'localparam'
     declarations, and was not intended to apply to lower-level
     'parameter' declarations.
     
     It would have been nicer if it were simply illegal to use
     the 'parameter' keyword in contexts where it is currently
     an alias for 'localparam'. This would have been analogous
     to the approach taken with ANSI-style port declarations
     in 12.3.4 --
     
       "Each module shall either be declared entirely with
        the list of ports syntax as described in 12.3.2 or
        entirely using the list_of_port_declarations as
        described in this section."
     
     -- Brad
     
     



    This archive was generated by hypermail 2.1.4 : Wed Sep 10 2003 - 09:32:45 PDT and
    sponsored by Boyd Technology, Inc.