[LLVMdev] Minor FileCheck proposal: CHECK-UNIQUE for labels to improve error messages

Eli Bendersky eliben at google.com
Thu Apr 25 07:37:56 PDT 2013


On Wed, Apr 24, 2013 at 8:05 PM, Stephen Lin <swlin at post.harvard.edu> wrote:

> Hi,
>
> Apologies if this has been proposed before; I couldn't find anything
> in basic searching.
>
> I've been writing tests lately and noticed that the error messages are
> not very helpful in cases where a check is incorrect but matches
> something that occurs in a later block: the checker continues assuming
> that the matched line is correct (no matter how much farther ahead it
> occurs) and then provides a misleading error message some time later.
>
> The problem is exacerbated if many similar tests are put in one file,
> since many checks can end up succeeding with unintended matches before
> something ends up failing.
>
> I propose a simple addition to FileCheck syntax to improve error
> messages in this case: a CHECK-UNIQUE directive which indicates that a
> given check is a unique match that should only occur once (and only
> once) in a given file and can only be matched with the given
> CHECK-UNIQUE; this would be used for labels or any other unique
> identifier lines.
>
> The CHECK-UNIQUE lines can then allow a better error message to be
> produced, by basically treating each section between CHECK-UNIQUE
> lines separately, so the actual line causing the error can be
> pinpointed more accurately.
>
> Anyone else thing this is a good idea? I'm happy to work on this if so.
>

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.

Eli
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130425/dbaa5056/attachment.html>


More information about the llvm-dev mailing list