summary refs log tree commit diff
path: root/posix/ptestcases.h
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2003-11-26 03:24:15 +0000
committerUlrich Drepper <drepper@redhat.com>2003-11-26 03:24:15 +0000
commit97fd3a3003b9eb980395417ffb104e02bf315fe8 (patch)
treea182a950fc4f7d23c60dac89ee85bad2aae696c9 /posix/ptestcases.h
parent65e6becf5b1b9ca1e911986d030b8b31b5dd4cfa (diff)
downloadglibc-97fd3a3003b9eb980395417ffb104e02bf315fe8.tar.gz
glibc-97fd3a3003b9eb980395417ffb104e02bf315fe8.tar.xz
glibc-97fd3a3003b9eb980395417ffb104e02bf315fe8.zip
Update.
2003-11-25  Ulrich Drepper  <drepper@redhat.com>

	* posix/runptests.c (main): Make errors fatal.
	* posix/PTESTS: One test in GA135 and GA136 check functionality
	which seems not guaranteed.

2003-11-25  Jakub Jelinek  <jakub@redhat.com>

	* posix/regexec.c (re_search_internal): If prune_impossible_nodes
	returned REG_NOMATCH, set match_last to -1.  Don't initialize
	pmatch[0] needlessly.  Fix comment.
	(prune_impossible_nodes): Don't segfault on NULL state_log entry.
	(set_regs): Fix comment.
	* posix/regcomp.c (parse_bracket_exp): Only set has_plural_match
	if adding both SIMPLE_BRACKET and COMPLEX_BRACKET.
	(build_charclass_op): Set has_plural_match if adding both
	SIMPLE_BRACKET and COMPLEX_BRACKET.
	* posix/bug-regex11.c (tests): Fix register values for one commented
	out test.  Add new tests.

	* posix/regex_internal.c (re_string_allocate): Make sure init_len
	is at least dfa->mb_cur_max.
	(re_string_reconstruct): If is_utf8, don't fall back into
	re_string_skip_chars just because idx points into a middle of
	valid UTF-8 character.  Instead, set the wcs bytes which correspond
	to the partial character bytes to WEOF.
	* posix/regexec.c (re_search_internal): Allocate input.bufs_len + 1
	instead of dfa->nodes_len + 1 state_log entries initially.
	* posix/bug-regex20.c (main): Uncomment backwards case insensitive
	tests.
Diffstat (limited to 'posix/ptestcases.h')
-rw-r--r--posix/ptestcases.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/posix/ptestcases.h b/posix/ptestcases.h
index 2819004b50..506b1cce0f 100644
--- a/posix/ptestcases.h
+++ b/posix/ptestcases.h
@@ -221,11 +221,18 @@
   { 1, 20, "a\\(.*b\\)c", "axcaxbbbcsxbbbbbbbbc",  },
   { 0, 0, "GA135", NULL, },
   { 1, 7, "\\(a\\(b\\(c\\(d\\(e\\)\\)\\)\\)\\)\\4", "abcdededede",  },
-  { 1, 2, "a\\(b\\)*c\\1", "acb",  },
+  { 0, 0, NULL, "POSIX does not really specify whether a\\(b\\)*c\\1 matches acb." },
+  { 0, 0, NULL, "back references are supposed to expand to the last match, but what" },
+  { 0, 0, NULL, "if there never was a match as in this case?" },
+  { -1, -1, "a\\(b\\)*c\\1", "acb",  },
   { 1, 11, "\\(a\\(b\\(c\\(d\\(e\\(f\\(g\\)h\\(i\\(j\\)\\)\\)\\)\\)\\)\\)\\)\\9", "abcdefghijjk",  },
   { 0, 0, "GA136", NULL, },
-  { 1, 2, "a\\(b\\)*c\\1", "acb",  },
-  { 4, 7, "a\\(b\\(c\\(d\\(f\\)*\\)\\)\\)\\4", "xYzabcdePQRST",  },
+  { 0, 0, NULL, "These two tests have the same problem as the test in GA135.  No match" },
+  { 0, 0, NULL, "of a subexpression, why should the back reference be usable?" },
+  { 0, 0, NULL, "1 2 a\\(b\\)*c\\1 acb" },
+  { 0, 0, NULL, "4 7 a\\(b\\(c\\(d\\(f\\)*\\)\\)\\)\\4¦xYzabcdePQRST" },
+  { -1, -1, "a\\(b\\)*c\\1", "acb",  },
+  { -1, -1, "a\\(b\\(c\\(d\\(f\\)*\\)\\)\\)\\4", "xYzabcdePQRST",  },
   { 0, 0, "GA137", NULL, },
   { -2, -2, "\\(a\\(b\\)\\)\\3", "foo",  },
   { -2, -2, "\\(a\\(b\\)\\)\\(a\\(b\\)\\)\\5", "foo",  },