Hi Folks:
I've looked quickly over Mantis 3525.
I think I understand the concern. When we created the current two-level syntax (property_expr and property_statement), we were trying to allow the user to write "if ... else" and "case" properties in a way that would look like procedural code. So, for example, we wanted to enable (and in some cases enforce) writing ";" to terminate a case item, and this would enable a property case to look like
property foo;
case (sel)
a1: p1;
a2: p2;
default: p;
endcase
endproperty
From my understanding of 3525, this will now be illegal, both because of the missing ";" between "endcase" and "endproperty" and also because of the ";"s appearing after "p1", "p2", and "p". So in 3525 syntax, this would be rewritten as
property foo;
case (sel)
a1: p1
a2: p2
default: p
endcase;
endproperty
My naïve conjecture is that everything legal in 3525 is already currently legal, but a lot of stuff that is currently legal becomes illegal in 3525. I realize that the cyclic syntax is very liberal and that a lot of the stuff that is legal now and that becomes illegal in 3525 is strange looking (like inserting ";" willy-nilly in property expressions, or gratuitously after "endcase", etc.). But there is also some not-so-strange looking stuff (like the first example above) that becomes illegal in 3525.
Can we find a better balance?
John Havlicek
johnh@cadence.com
Received on Thu, 28 Jun 2012 07:50:51 -0700
This archive was generated by hypermail 2.1.8 : Thu Jun 28 2012 - 07:51:00 PDT