From 7df66416541b2001f2eb34eda543e2202617ba85 Mon Sep 17 00:00:00 2001 From: Alexey Samsonov Date: Wed, 13 Nov 2013 11:56:22 +0000 Subject: FileCheck: fix a bug with multiple --check-prefix options. Summary: This fixes a subtle bug in new FileCheck feature added in r194343. When we search for the first satisfying check-prefix, we should actually return the first encounter of some check-prefix as a substring, even if it's not a part of valid check-line. Otherwise "FileCheck --check-prefix=FOO --check-prefix=BAR" with check file: FOO not a vaild check-line FOO: foo BAR: bar incorrectly accepted file: fog bar as it skipped the first two encounters of FOO, matching only BAR: line. Reviewers: arsenm, dsanders Reviewed By: dsanders CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D2166 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194565 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/FileCheck/check-multiple-prefixes-nomatch.txt | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 test/FileCheck/check-multiple-prefixes-nomatch.txt (limited to 'test/FileCheck') diff --git a/test/FileCheck/check-multiple-prefixes-nomatch.txt b/test/FileCheck/check-multiple-prefixes-nomatch.txt new file mode 100644 index 0000000000..9d3835985f --- /dev/null +++ b/test/FileCheck/check-multiple-prefixes-nomatch.txt @@ -0,0 +1,10 @@ +; RUN: not FileCheck -input-file %s %s -check-prefix=FOO -check-prefix=BAR 2>&1 | FileCheck %s + +BAR +bar +foo +; BAR: ba{{z}} +; FOO: fo{{o}} + +; CHECK: {{error: expected string not found in input}} +; CHECK-NEXT: {{B}}AR: ba{{[{][{]z[}][}]}} -- cgit v1.2.3