Re: [sv-bc] Is an unnamed block with declarations a scope?

From: Steven Sharp <sharp_at_.....>
Date: Thu Aug 18 2005 - 15:18:07 PDT
>From: Greg Jaxon <Greg.Jaxon@synopsys.com>
>
>    In place of "inconsequential local variable" in our
>discussions, please substitute "compiler temporary variable".
>Compilers that rewrite SV RTL, must sometimes introduce intermediate
>scopes while still preserving the user's scope hierarchy.

I have never worked on a compiler that performed transformations
at the source level, or where compiler temporaries were treated
like user variables (e.g. having names or formal scopes).  Assuming
that most SV compilers don't, this parallel doesn't really help in
implementation.

And since such things are presumably invisible to users, they don't
give users a familiar model for understanding this "unorthodox" behavior.


>LRM terminology is a little like reading tea leaves anyway, I
>think we can say this clearly enough.

I agree that the LRM text can be difficult to interpret, and based on
past history, I don't have a lot of confidence in our ability to do
a perfect job here.  Much of the reason that the LRM suffices is that
readers can assume that the intent matches other programming languages
that they know, or is a simple extension of other things in the language.
That is a good argument for simplicity and orthodoxy.

I think we both understand the issues here, so I don't know that there
is value in continuing to describe them.  We just differ in the importance
we give different factors.  To use your description, I prefer "simple and
strict", while you prefer "complex and promiscuous" :-)

Steven Sharp
sharp@cadence.com
Received on Thu Aug 18 15:18:18 2005

This archive was generated by hypermail 2.1.8 : Thu Aug 18 2005 - 15:20:41 PDT