1; RUN: FileCheck -input-file %s %s 2>&1 | FileCheck -check-prefix QUIET --allow-empty %s 2; RUN: FileCheck -v -input-file %s %s 2>&1 | FileCheck -check-prefix V %s 3; RUN: FileCheck -vv -input-file %s %s 2>&1 | FileCheck -check-prefixes V,VV %s 4 5foo 6bar 7CHECK: foo 8CHECK-NOT: raboof 9CHECK-NEXT: bar 10 11V: verbose.txt:[[@LINE-4]]:8: remark: {{C}}HECK: expected string found in input 12V-NEXT: {{C}}HECK: foo{{$}} 13V-NEXT: {{^ \^$}} 14V-NEXT: verbose.txt:[[@LINE-9]]:1: note: found here 15V-NEXT: {{^}}foo{{$}} 16V-NEXT: {{^}}^~~{{$}} 17 18V-NEXT: verbose.txt:[[@LINE-9]]:13: remark: {{C}}HECK-NEXT: expected string found in input 19V-NEXT: {{C}}HECK-NEXT: bar{{$}} 20V-NEXT: {{^ \^$}} 21V-NEXT: verbose.txt:[[@LINE-15]]:1: note: found here 22V-NEXT: {{^}}bar{{$}} 23V-NEXT: {{^}}^~~{{$}} 24 25VV-NEXT: verbose.txt:[[@LINE-17]]:12: remark: {{C}}HECK-NOT: excluded string not found in input 26VV-NEXT: {{C}}HECK-NOT: raboof{{$}} 27VV-NEXT: {{^ \^$}} 28VV-NEXT: verbose.txt:[[@LINE-22]]:1: note: scanning from here 29VV-NEXT: {{^}}bar{{$}} 30VV-NEXT: {{^}}^{{$}} 31 32before empty 33 34after empty 35CHECK: before empty 36CHECK-EMPTY: 37CHECK-NEXT: after empty 38 39V: verbose.txt:[[@LINE-4]]:8: remark: {{C}}HECK: expected string found in input 40V-NEXT: {{C}}HECK: before empty{{$}} 41V-NEXT: {{^ \^$}} 42V-NEXT: verbose.txt:[[@LINE-10]]:1: note: found here 43V-NEXT: {{^}}before empty{{$}} 44V-NEXT: {{^}}^~~~~~~~~~~~{{$}} 45 46V-NEXT: verbose.txt:[[@LINE-10]]:13: remark: {{C}}HECK-EMPTY: expected string found in input 47V-NEXT: {{C}}HECK-EMPTY:{{$}} 48V-NEXT: {{^ \^$}} 49V-NEXT: verbose.txt:[[@LINE-16]]:1: note: found here 50V-EMPTY: 51V-NEXT: {{^}}^{{$}} 52 53V-NEXT: verbose.txt:[[@LINE-16]]:13: remark: {{C}}HECK-NEXT: expected string found in input 54V-NEXT: {{C}}HECK-NEXT: after empty{{$}} 55V-NEXT: {{^ \^$}} 56V-NEXT: verbose.txt:[[@LINE-22]]:1: note: found here 57V-NEXT: {{^}}after empty{{$}} 58V-NEXT: {{^}}^~~~~~~~~~~{{$}} 59 60abcdef 61abcdef 62CHECK-DAG: abcdef 63CHECK-DAG: def 64 65V-NEXT: verbose.txt:[[@LINE-3]]:12: remark: {{C}}HECK-DAG: expected string found in input 66V-NEXT: {{C}}HECK-DAG: abcdef 67V-NEXT: {{^ \^$}} 68V-NEXT: verbose.txt:[[@LINE-8]]:1: note: found here 69V-NEXT: {{^}}abcdef{{$}} 70V-NEXT: {{^}}^~~~~~{{$}} 71 72VV-NEXT: verbose.txt:[[@LINE-9]]:12: remark: {{C}}HECK-DAG: expected string found in input 73VV-NEXT: {{C}}HECK-DAG: def 74VV-NEXT: {{^ \^$}} 75VV-NEXT: verbose.txt:[[@LINE-15]]:4: note: found here 76VV-NEXT: {{^abcdef$}} 77VV-NEXT: {{^ \^~~$}} 78VV-NEXT: verbose.txt:[[@LINE-18]]:1: note: match discarded, overlaps earlier DAG match here 79VV-NEXT: {{^}}abcdef{{$}} 80VV-NEXT: {{^}}^~~~~~{{$}} 81 82V-NEXT: verbose.txt:[[@LINE-19]]:12: remark: {{C}}HECK-DAG: expected string found in input 83V-NEXT: {{C}}HECK-DAG: def 84V-NEXT: {{^ \^$}} 85V-NEXT: verbose.txt:[[@LINE-24]]:4: note: found here 86V-NEXT: {{^abcdef$}} 87V-NEXT: {{^ \^~~$}} 88 89xyz 90CHECK: xyz 91CHECK-NOT: {{z}}yx 92 93V: verbose.txt:[[@LINE-3]]:8: remark: {{C}}HECK: expected string found in input 94V-NEXT: {{C}}HECK: xyz{{$}} 95V-NEXT: {{^ \^$}} 96V-NEXT: verbose.txt:[[@LINE-7]]:1: note: found here 97V-NEXT: {{^}}xyz{{$}} 98V-NEXT: {{^}}^~~{{$}} 99 100VV-NEXT: verbose.txt:[[@LINE-9]]:19: remark: implicit EOF: expected string found in input 101VV-NEXT: {{C}}HECK-NOT: {{[{][{]z[}][}]yx$}} 102VV-NEXT: {{^ \^$}} 103VV-NEXT: verbose.txt:[[@LINE+13]]:1: note: found here 104VV-NOT: {{.}} 105VV: {{^\^$}} 106 107VV-NEXT: verbose.txt:[[@LINE-16]]:12: remark: {{C}}HECK-NOT: excluded string not found in input 108VV-NEXT: {{C}}HECK-NOT: {{[{][{]z[}][}]yx$}} 109VV-NEXT: {{^ \^$}} 110VV-NEXT: verbose.txt:[[@LINE-20]]:1: note: scanning from here 111VV-NEXT: {{^C}}HECK: xyz{{$}} 112VV-NEXT: {{^\^$}} 113 114QUIET-NOT: {{.}} 115V-NOT: {{.}} 116