This sounds like an inconsistency in the LRM; Dave, in what section is this restriction? I will submit a Mantis for this. If there are any concerns about lifting the restriction entirely, another approach would be to specify that the attached subroutine call to an assertion counts as a procedural context, albeit a tiny and highly restricted one. Note that the LRM also says that tasks are called from procedural blocks (13.5), so the inconsistency may extend beyond object handle dereferences. --Mike Rich, Dave wrote: > There is a current LRM restriction that limits class handle references > (de-reference actually) to procedural context. The restriction is > primarily to prevent class handle dereferences before the class has been > constructed at time 0. > > I would be in favor of lifting this restriction and leaving it to the > user since these kinds of error are easy to detect and fix. > > Dave > > -----Original Message----- > From: John Havlicek [mailto:john.havlicek@freescale.com] > Sent: Wednesday, October 17, 2007 10:08 AM > To: Rich, Dave > Cc: sv-ac@eda.org; sv-ec@eda.org > Subject: covergroup sample method > > Hi Dave: > > Why would it not be legal to call a covergroup sample method from a > sequence or property? > > We have > > 16.10 Calling subroutines on match of a sequence > > Tasks, task methods, void functions, void function methods, and > system tasks can be called at the end of a successful non-empty > match of a sequence. The subroutine calls, like local variable > assignments, appear in the comma-separated list that follows the > sequence. The subroutine calls are said to be attached to the > sequence. It shall be an error to attach a subroutine call or any > sequence_match_item to a sequence that admits an empty match. The > sequence and the list that follows are enclosed in parentheses. > > > I thought that the covergroup sample method would count as a > void function method. Am I being naive? > > J.H. > >> I don't think you would be allowed to call a covergroup sample method >> from a sequence or property. You could call a function that copies > the >> local variable and does the sample for you. >> >>> -----Original Message----- >>> From: owner-sv-ec@server.eda.org [mailto:owner-sv-ec@server.eda.org] >>> On Behalf Of Michael Burns >>> Sent: Friday, October 12, 2007 4:39 PM >>> To: Scott, David >>> Cc: SV-EC >>> Subject: Re: [sv-ec] covergroup sample method >>> >>> >>> The problem is that we want to trigger coverage from within > assertions >>> using >>> data in assertion local variables. I don't believe we are allowed to >>> declare >>> covergroups within assertions. >>> >>> --Mike > -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Thu Oct 18 15:00:31 2007
This archive was generated by hypermail 2.1.8 : Thu Oct 18 2007 - 15:00:52 PDT