[sv-bc] disable example 3 in 9.6.2

From: Bresticker, Shalom <shalom.bresticker_at_.....>
Date: Wed Nov 28 2007 - 05:25:29 PST
Hi Stu,

In 9.6.2 (disable), Example 3 is (using the text from Draft 2, the first
merge version, for clarity of the issue):

Example 3-This example illustrates using the disable construct to
disable terminate execution of a named
block which does not contain the disable statement. If the block is
currently executing, this causes control to
jump to the statement immediately after the block. If the block is a
loop body, it acts like a continue. If the
block is not currently executing, the disable has no effect.
module ...
always always1: begin ... t1: task1( ); ... end
...
endmodule
always begin
...
disable u1.always1.t1; // exit task1, which was called from always1
(static)
end

On this, you added the comment 
example from
1800-2005 10.8
(should have referred to 10.9, I think).

In Draft 4, you added the additional comment
The task disable
does not show
the "terminate
execution of a
named block" in
the description.

I looked at this a little.

The code example indeed comes from 1800-2005 10.9, but there the
preceding text is
SystemVerilog has return from a task, but disable is also supported. If
disable is applied to a named
task, all current executions of the task are disabled
The code indeed makes sense in the context of that text.

The text of Example 3 in the merged LRM seems to come from the paragraph
preceding the text I just quoted in 10.9 of 1800-2005, which was
SystemVerilog has break and continue to break out of or continue the
execution of loops. The Verilog
disable can also be used to break out of or continue a loop, but is more
awkward than using break or
continue. The disable is also allowed to disable a named block, which
does not contain the disable
statement. If the block is currently executing, this causes control to
jump to the statement immediately after
the block. If the block is a loop body, it acts like a continue. If the
block is not currently executing, the
disable has no effect.

But that was a separate paragraph, not directly talking about this code
example, which had its own preceding text, as I quoted. Looks to me like
a merge problem.

Regards,
Shalom

Shalom Bresticker
Intel Jerusalem LAD DA
+972 2 589-6582
+972 54 721-1033

---------------------------------------------------------------------
Intel Israel (74) Limited

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Wed Nov 28 05:26:58 2007

This archive was generated by hypermail 2.1.8 : Wed Nov 28 2007 - 05:28:24 PST