The syntax proposed by you (foreach (a[x][y]) ) is not valid according to
LRM. Froeach can take :
hierarchical_array_identifier
as an argument, not array member select.
DANiel
_____
From: Jonathan Bromley [mailto:jonathan.bromley@verilab.com]
Sent: Wednesday, June 02, 2010 12:44 PM
To: Daniel Mlynek
Cc: Paul Graham; sv-bc
Subject: Re: [sv-bc] scope of break/continue within foreach loop
I agree with Daniel. If break takes you right out of foreach, you can
easily get
the "break out of inner loop" behaviour by splitting the loop:
foreach (a[x,y]) begin
...mess with a[x][y];
break; // should break out completely
end
foreach (a[x]) begin
foreach (a[x][y]) begin // this scans only y, right????
...mess with a[x][y];
break; // breaks out of y-loop only
end
end
But if break only breaks the innermost loop, it's troublesome to break
out of the whole "foreach".
-- Jonathan Bromley On Wed, Jun 2, 2010 at 11:31 AM, Daniel Mlynek <daniel.mlynek@aldec.com.pl> wrote: Imho break should break the whole loop any other hahviour would be just hard to understand ie: module top; int arr[10][3]; initial foreach (arr[i,j]) begin $display(i, j); if (i==2) break; //this breaks the foreach and finishes whole tests end endmodule DANiel -----Original Message----- From: owner-sv-bc@eda.org [mailto:owner-sv-bc@eda.org] On Behalf Of Paul Graham Sent: Tuesday, June 01, 2010 11:55 PM To: sv-bc Subject: [sv-bc] scope of break/continue within foreach loop A foreach statement with multiple variables is defined as equivalent to a set of nested for loops. If a break statement is executed in the body of a forever loop, does it break out of the innermost of these nested for loops, or does it break out of the outermost? Likewise for a continue statement. I guess it should be the outermost loop. Could this be clarified? Paul -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Wed Jun 2 06:42:24 2010
This archive was generated by hypermail 2.1.8 : Wed Jun 02 2010 - 06:45:15 PDT