xref: /third_party/musl/libc-test/src/regression/regex-backref-0.c (revision 570af302)
  • Home
  • History
  • Annotate Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
  • only in /third_party/musl/libc-test/src/regression/
1570af302Sopenharmony_ci// \0 is not a valid backref, it is undefined by the standard
2570af302Sopenharmony_ci// we treat such cases as literal char
3570af302Sopenharmony_ci#include <regex.h>
4570af302Sopenharmony_ci#include "test.h"
5570af302Sopenharmony_ci
6570af302Sopenharmony_ciint main(void)
7570af302Sopenharmony_ci{
8570af302Sopenharmony_ci	char buf[200];
9570af302Sopenharmony_ci	char pat[] = "a\\0";
10570af302Sopenharmony_ci	regex_t r;
11570af302Sopenharmony_ci	int n;
12570af302Sopenharmony_ci
13570af302Sopenharmony_ci	n = regcomp(&r, pat, 0);
14570af302Sopenharmony_ci	if (n) {
15570af302Sopenharmony_ci		regerror(n, &r, buf, sizeof buf);
16570af302Sopenharmony_ci		t_error("regcomp(%s) returned %d (%s) wanted 0\n", pat, n, buf);
17570af302Sopenharmony_ci	}
18570af302Sopenharmony_ci	n = regexec(&r, "a0", 0, 0, 0);
19570af302Sopenharmony_ci	if (n) {
20570af302Sopenharmony_ci		regerror(n, &r, buf, sizeof buf);
21570af302Sopenharmony_ci		t_error("regexec(/%s/ ~ \"a0\") returned %d (%s), wanted 0\n",
22570af302Sopenharmony_ci			pat, n, buf);
23570af302Sopenharmony_ci	}
24570af302Sopenharmony_ci
25570af302Sopenharmony_ci	return t_status;
26570af302Sopenharmony_ci}
27

Indexes created Thu Nov 07 10:32:03 CST 2024