<div dir="ltr">On Wed, Apr 24, 2013 at 8:05 PM, Stephen Lin <span dir="ltr"><<a href="mailto:swlin@post.harvard.edu" target="_blank">swlin@post.harvard.edu</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
Apologies if this has been proposed before; I couldn't find anything<br>
in basic searching.<br>
<br>
I've been writing tests lately and noticed that the error messages are<br>
not very helpful in cases where a check is incorrect but matches<br>
something that occurs in a later block: the checker continues assuming<br>
that the matched line is correct (no matter how much farther ahead it<br>
occurs) and then provides a misleading error message some time later.<br>
<br>
The problem is exacerbated if many similar tests are put in one file,<br>
since many checks can end up succeeding with unintended matches before<br>
something ends up failing.<br>
<br>
I propose a simple addition to FileCheck syntax to improve error<br>
messages in this case: a CHECK-UNIQUE directive which indicates that a<br>
given check is a unique match that should only occur once (and only<br>
once) in a given file and can only be matched with the given<br>
CHECK-UNIQUE; this would be used for labels or any other unique<br>
identifier lines.<br>
<br>
The CHECK-UNIQUE lines can then allow a better error message to be<br>
produced, by basically treating each section between CHECK-UNIQUE<br>
lines separately, so the actual line causing the error can be<br>
pinpointed more accurately.<br>
<br>
Anyone else thing this is a good idea? I'm happy to work on this if so.<br></blockquote><div><br></div><div style>I like this idea. There are many places in the test cases where this idiom is needed and currently CHECK followed by a CHECK-NOT is used, which is cumbersome.</div>
<div style><br></div><div style>Eli</div><div style><br></div><div><br></div><div> </div></div></div></div>