[clang] [Clang] Wide delimiters ('{{{') for expect strings (PR #77326)
via cfe-commits
cfe-commits at lists.llvm.org
Mon Jan 8 10:46:13 PST 2024
================
@@ -157,3 +157,33 @@ unexpected b; // expected-error at 33 1-1 {{unknown type}}
// what-error {{huh?}}
// CHECK9: error: 'what-error' diagnostics expected but not seen:
#endif
+
+#ifdef TEST_WIDE_DELIM
+// RUN: not %clang_cc1 -DTEST_WIDE_DELIM -verify %s 2>&1 | FileCheck -check-prefix=CHECK-WIDE-DELIM %s
+
+// expected-error {{{some message with {{}} in it}}}
+// expected-error {{{some message with {}} in it}}}
+// expected-error {{{some message with {{} in it}}}
+
+// expected-error-re {{{some {{.*}} regex with double braces}}}
+// expected-error-re {{{some message with {{} in it}}}
+
+// expected-error {{{mismatched delim}}
+// expected-error-re {{{mismatched re {{.*} }}}
+// expected-error-re {{{no regex}}}
+
+#if 0
+// CHECK-WIDE-DELIM: error: 'expected-error' diagnostics expected but not seen:
+// CHECK-WIDE-DELIM-NEXT: verify.c Line 164: some message with {{[{]{}[}]}} in it
----------------
sethp wrote:
Well, it seems like the answer to "who checks the checker" is FileCheck. There wasn't a better way than this that I saw at that layer of recursion to escape the `{{` braces, hopefully it's not too distracting here.
https://github.com/llvm/llvm-project/pull/77326
More information about the cfe-commits
mailing list