diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-11 08:21:29 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-11 08:21:29 +0000 |
commit | 29cd838eab01ed7110f3ccb2e8c6a35c8a31dbcc (patch) | |
tree | 63ef546b10a81d461e5cf5ed9e98a68cd7dee1aa /src/grep/tests/word-delim-multibyte | |
parent | Initial commit. (diff) | |
download | kbuild-29cd838eab01ed7110f3ccb2e8c6a35c8a31dbcc.tar.xz kbuild-29cd838eab01ed7110f3ccb2e8c6a35c8a31dbcc.zip |
Adding upstream version 1:0.1.9998svn3589+dfsg.upstream/1%0.1.9998svn3589+dfsg
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/grep/tests/word-delim-multibyte')
-rwxr-xr-x | src/grep/tests/word-delim-multibyte | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/src/grep/tests/word-delim-multibyte b/src/grep/tests/word-delim-multibyte new file mode 100755 index 0000000..31190ad --- /dev/null +++ b/src/grep/tests/word-delim-multibyte @@ -0,0 +1,45 @@ +#!/bin/sh +# exercise \< and \> with multibyte data. +# Derived from https://savannah.gnu.org/bugs/?29537 +. "${srcdir=.}/init.sh"; path_prepend_ ../src + +require_en_utf8_locale_ + +e_acute=$(printf '\303\251') +echo "$e_acute" > in || framework_failure_ +LC_ALL=en_US.UTF-8 +export LC_ALL + +fail=0 + +grep "\\<$e_acute" in > out 2>err || fail=1 +compare out in || fail=1 +compare /dev/null err || fail=1 + +grep "$e_acute\\>" in > out 2>err || fail=1 +compare out in || fail=1 +compare /dev/null err || fail=1 + +grep -w "$e_acute" in > out 2>err || fail=1 +compare out in || fail=1 +compare /dev/null err || fail=1 + +# Also ensure that this works in both the C locale and that multibyte one. +# In the C locale, it failed due to a dfa.c regression in grep-3.2. +echo 123-x > in || framework_failure_ + +for locale in C en_US.UTF-8; do + LC_ALL=$locale grep '.\bx' in > out 2>err || fail=1 + compare out in || fail=1 + compare /dev/null err || fail=1 +done + +# Bug#43255 +printf 'a \303\255cone b\n' >in +for flag in '' -i; do + returns_ 1 env LC_ALL=en_US.UTF-8 grep -w $flag cone in >out 2>err || fail=1 + compare /dev/null out || fail=1 + compare /dev/null err || fail=1 +done + +Exit $fail |