Re: [sv-bc] When are constant expressions evaluated?

From: Gordon Vreugdenhil <gordonv_at_.....>
Date: Mon Feb 12 2007 - 07:20:58 PST
There are some more general questions in this space.  In
general, a parameter (particular a type parameter) may have
a default that is incompatible with later use since the
user may "require" overrides of such a parameter.  Whether
or not elaboration errors are permitted due to illegal
initial or intermediate states in the elaboration is not
addressed by the LRM.  I think that users will assume that
if the parameters are overridden to a sensible state that
no earlier errors are reported but the LRM certainly doesn't
address that.

Gord.


Bresticker, Shalom wrote:
> That might not be in and of itself a problem, but I now realize that
> even if the parameter values (and types) were evaluated and checked at
> the compilation stage, that would not help, because they would still
> need to be re-evaluated and checked at elaboration time, after all
> overrides and propagations, so there is no point in checking them
> earlier, it would just be a duplication of effort. So in Brad's immortal
> words, "That makes sense," that there is no significance to the
> parameter default type and value until elaboration time.
> 
>> The default value of a parameter is itself a constant expression, so
>> cannot in general be evaluated until elaboration time, because it may
>> depend on the actual instantiated values of other parameters.
> 
> Shalom
> 

-- 
--------------------------------------------------------------------
Gordon Vreugdenhil                                503-685-0808
Model Technology (Mentor Graphics)                gordonv@model.com


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Mon Feb 12 07:21:17 2007

This archive was generated by hypermail 2.1.8 : Mon Feb 12 2007 - 07:21:34 PST