Re: [sv-bc] Serious issue with default expressions for task and function arguments

From: Paul Graham <pgraham_at_.....>
Date: Thu Mar 03 2005 - 10:24:00 PST
>     The default_value is an expression. The expression is evaluated in
>     the scope of the caller each time the subroutine is called. The
>     elements of the expression must be visible at the scope of subroutine

Here's another example:

function f(integer x = p1);
   return x;
endfunction

module m1(...);
    parameter p1 = 1;
    assign q = f();	// q == 1
endmodule

module m1(...);
    parameter p1 = 2;
    assign q = f();	// q == 2
endmodule

In this case there is no p1 visible at the point of compilation
of function f.  Is this legal?  Is SV adopting dynamic scoping? :-)

Paul
Received on Thu Mar 3 10:24:04 2005

This archive was generated by hypermail 2.1.8 : Thu Mar 03 2005 - 10:24:09 PST