RE: [sv-bc] Re: [sv-ac] Is concurrent assertion not allowed inside task/function?

From: Brad Pierce <Brad.Pierce_at_.....>
Date: Fri Jan 15 2010 - 10:08:22 PST
Bounced mail from John Havlicek in response to

     http://www.eda.org/sv-ac/hm/8737.html

-----

Hi Folks:

It seems to me that concurrent assertions in tasks make sense and are
allowed by the LRM.  The original code examples in the thread are not
legal because they try to make the concurrent assertion stand as a task
declaration item, which is not allowed.  The concurrent assertion inside
a task must be a statement item, hence in a procedural context.  The
Special Committee worked on the semantics of launching concurrent
assertions from procedural contexts, and I think that all makes sense.

I don't see a good use for concurrent assertions inside functions.  The
BNF seems to allow them, but there may be restrictions on statements in
functions that forbid them.  If they are allowed, I think that the
effect would be to launch the concurrent assertions as a side effects.

I see immediate assertions  as useful in functions to check entry
conditions, intermediate values, etc.

J.H.



-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Fri Jan 15 10:09:19 2010

This archive was generated by hypermail 2.1.8 : Fri Jan 15 2010 - 10:10:16 PST