errata/484: 10.3.4.e: assignment of function result value

From: Brad Pierce (Brad.Pierce@synopsys.com)
Date: Sat Sep 20 2003 - 10:13:37 PDT

  • Next message: Brad.Pierce@synopsys.com: "errata/276: PROPOSAL - BNF A.6.4 doesn't allow fork/join in functions"

    Precedence: bulk

    >Number: 484
    >Category: errata
    >Originator: "Brad Pierce" <Brad.Pierce@synopsys.com>
    >Environment:
    >Description:

    According to 10.3.4.e, "A function definition shall include an
    assignment of the function result value to the internal variable
    that has the same name as the function name."

    Must at least one such assignment be always reachable? Is the following
    function legal? --

       function f ;
       input i ;
       if (1'b0) f = i ;
       endfunction

    Or, asking almost the same question, is it legal to fall off the end of
    a function without making an explicit assignment to the implicitly declared
    return variable? Must a simulator issue an error when this happens?
    If not, why not? This seems like a more natural (and user-helpful)
    restriction than the textually-based rule e, which it would subsume.

    -- Brad



    This archive was generated by hypermail 2.1.4 : Sat Sep 20 2003 - 09:32:47 PDT and
    sponsored by Boyd Technology, Inc.