Hi Dmitry: O.k. For the record I am working on the 1668 draft that will change some large parts of the text in 17.8. E.g., I have draft change copied below. J.H. 17.8, p. 259: REPLACE The dynamic creation of a variable and its assignment is achieved by using the local variable declaration in a sequence or property declaration and making an assignment in the sequence. [ sequence_expr ::= ... | ( expression_or_dist {, sequence_match_item } ) [ boolean_abbrev ] | ( sequence_expr {, sequence_match_item} ) [ sequence_abbrev ] ... sequence_match_item ::= operator_assignment | inc_or_dec_expression | subroutine_calla ] Syntax 17-12 -- Variable assignment syntax (excerpt from Annex A) The type of variable is explicitly specified. The variable can be assigned at the end point of any syntactic subsequence by placing the subsequence, comma separated from the sampling assignment, in parentheses. For example, if in WITH The dynamic creation of a local variable is achieved by using an assertion variable declaration within a sequence or property declaration. [ assertion_variable_declaration ::= var_data_type list_of_variable_decl_assignments ; ] Syntax 17-12 -- Assertion variable declaration syntax (excerpt from Annex A) // Note to editor: all subsequent syntax box numbers in Section 17 // must be adjusted. The data type of an assertion variable declaration shall be specified explicitly. The data type is followed by a comma-separated list of one or more identifiers with optional declaration assignments. The declaration assignment is used to place an initial value in the corresponding local variable. The initial value is defined by an expression, which need not be constant. At the beginning of each evaluation attempt of an instance of a declared sequence or property, new copies of its local variables are created and any corresponding declaration assignments are performed. The declaration assignments are performed in the order that they appear in the sequence or property declaration. The expression of a declaration assignment to a local variable can refer to a previously declared local variable, but in this case the previously declared local variable must itself have a declaration assignment. A local variable without a declaration assignment remains unassigned at the beginning of the evaluation attempt. For example, at the beginning of an evaluation attempt of an instance of sequence s; logic u, v = a, w = v || b; ... endsequence the assignment of a to v is performed first and then the assignment of v || b to w is performed. The local variable u remains unassigned at the beginning of the evaluation attempt. !!! Need to check whether further modifications are needed !!! for declaration assignments not being made or not flowing !!! when the overall sequence matches empty. Local variables can be assigned and re-assigned within the body of the sequence or property in which they are declared. [ sequence_expr ::= ... | ( expression_or_dist {, sequence_match_item } ) [ boolean_abbrev ] | ( sequence_expr {, sequence_match_item} ) [ sequence_abbrev ] ... sequence_match_item ::= operator_assignment | inc_or_dec_expression | subroutine_calla ] Syntax 17-13 -- Variable assignment syntax (excerpt from Annex A) One or more local variables can be assigned at the end point of any syntactic subsequence by placing the subsequence, comma separated from the list of local variable assignments, in parentheses. At the end of any non-empty match of the subsequence, the local variable assignments are performed in the order that they appear in the list. For example, if in > X-ExtLoop1: 1 > X-IronPort-AV: i="4.13,226,1167638400"; > d="scan'208"; a="188096161:sNHT34960604" > X-MIMEOLE: Produced By Microsoft Exchange V6.5 > Content-class: urn:content-classes:message > Date: Tue, 23 Jan 2007 18:19:04 +0200 > X-MS-Has-Attach: > X-MS-TNEF-Correlator: > Thread-Topic: [sv-ac] 1704 proposal > thread-index: Acc/Cf3S/b+EwNgaRGyJh1W3vcgi/QAABcPA > From: "Korchemny, Dmitry" <dmitry.korchemny@intel.com> > Cc: <sv-ac@eda-stds.org> > X-OriginalArrivalTime: 23 Jan 2007 16:19:24.0924 (UTC) FILETIME=[3F664BC0:01C73F0A] > > Hi Lisa, John, > > I meant to add this comment to section 17.8. > > Dmitry > > -----Original Message----- > From: John Havlicek [mailto:john.havlicek@freescale.com]=20 > Sent: Tuesday, January 23, 2007 6:16 PM > To: piper@cadence.com; Korchemny, Dmitry > Cc: sv-ac@eda-stds.org > Subject: Re: [sv-ac] 1704 proposal > > Hi Lisa, Dmitry: > > My opinion is that it is not necessary to add a sentence specifically > about local variable assignments in 17.9. This might be confusing, > raising the question, "what about other sequence match items?" > > However, we probably need to scan through the other parts of Section > 17, in particular the description of local variable flow, to see=20 > if there are other places where we need to clarify regarding empty > match. > > E.g., I imagine some text like the following being added somewhere: > > A local variable that is assigned within a subsequence=20 > does not flow out of an empty match of that subsequence. > > J.H. > > > > X-MimeOLE: Produced By Microsoft Exchange V6.5 > > Content-class: urn:content-classes:message > > Date: Tue, 23 Jan 2007 10:37:27 -0500 > > X-MS-Has-Attach:=20 > > X-MS-TNEF-Correlator:=20 > > Thread-Topic: [sv-ac] 1704 proposal > > Thread-Index: Acc9pzJ7hvlNNYNkQ2+/JsBjEA3dRgBLHJogAAwaDkA=3D > > From: "Lisa Piper" <piper@cadence.com> > > Cc: <sv-ac@eda-stds.org> > > X-Received: By mx-sanjose.cadence.com as l0NFbRGe001425 at Tue Jan 23 > 07:37:40 2007 > > X-OriginalArrivalTime: 23 Jan 2007 15:37:48.0953 (UTC) > FILETIME=3D[6FAF5890:01C73F04] > >=20 > > This is a multi-part message in MIME format. > >=20 > > ------_=3D_NextPart_001_01C73F04.605EAD2F > > Content-Type: text/plain; > > charset=3D"us-ascii" > > Content-Transfer-Encoding: quoted-printable > >=20 > > Dmitry, > >=20 > > =3D20 > >=20 > > I thought assignment of a local variable was simply one form of > > "sequence_match_item". Is that not the case? I have no problem with > > adding it though. > >=20 > > =3D20 > >=20 > > lisa > >=20 > > =3D20 > >=20 > > ________________________________ > >=20 > > From: Korchemny, Dmitry [mailto:dmitry.korchemny@intel.com]=3D20 > > Sent: Tuesday, January 23, 2007 4:55 AM > > To: Lisa Piper; john.havlicek@freescale.com > > Cc: sv-ac@eda-stds.org > > Subject: RE: [sv-ac] 1704 proposal > >=20 > > =3D20 > >=20 > > HI Lisa, > >=20 > > =3D20 > >=20 > > It probably makes sense to add to your proposal a sentence about local > > variable assignment in case of an empty match. Though this behavior > > follows from the formal semantics definition, this point should be > made > > clear in the text itself. Of course, one can open an additional Mantis > > item for it, but it might also be included to yours. > >=20 > > =3D20 > >=20 > > What do you think? > >=20 > > =3D20 > >=20 > > Thanks, > >=20 > > Dmitry=3D20 > >=20 > > =3D20 > >=20 -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Tue Jan 23 08:27:26 2007
This archive was generated by hypermail 2.1.8 : Tue Jan 23 2007 - 08:27:43 PST