bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: grep-3.3.42-088f test results on AIX


From: Jim Meyering
Subject: Re: grep-3.3.42-088f test results on AIX
Date: Thu, 26 Dec 2019 16:03:05 -0800

On Thu, Dec 26, 2019 at 3:24 PM Bruno Haible <address@hidden> wrote:
>
> Hi Jim,
>
> > Would you please amend into it the attached grammar tweak
> > (subjunctive) and change to avoid crossing the 80-byte line length
> > limits:
>
> Done, and also implemented Paul's suggestion.
>
> Regarding the grammar: I wasn't aware of this "weird quirk in English
> language" [1].
>
> [1] https://www.englishforums.com/English/RequireThat/cbmhv/post.htm
>
>
> 2019-12-26  Bruno Haible  <address@hidden>
>
>         test-framework-sh: Avoid /bin/sh on AIX 7.2 due to its printf 
> built-in.
>         Reported by Paul Eggert in
>         <https://lists.gnu.org/archive/html/grep-devel/2019-12/msg00020.html>.
>         Simplification by Jim Meyering.
>         * tests/init.sh (gl_shell_test_script_): Add a test of printf of an
>         octal escape sequence in a UTF-8 locale.
>
> diff --git a/tests/init.sh b/tests/init.sh
> index 8ca5c90..049e0d3 100644
> --- a/tests/init.sh
> +++ b/tests/init.sh
> @@ -129,6 +129,8 @@ else
>  fi
>
>  # We require $(...) support unconditionally.
> +# We require that the printf built-in work correctly regarding octal escapes;
> +# this eliminates /bin/sh on AIX 7.2.
>  # We require non-surprising "local" semantics (this eliminates dash).
>  # This takes the admittedly draconian step of eliminating dash, because the
>  # assignment tab=$(printf '\t') works fine, yet preceding it with "local "
> @@ -158,6 +160,12 @@ fi
>  #  ? - not ok
>  gl_shell_test_script_='
>  test $(echo y) = y || exit 1
> +LC_ALL=en_US.UTF-8 printf "\\351" 2>/dev/null \
> +  | LC_ALL=C tr "\\351" x | LC_ALL=C grep x > /dev/null \
> +  || exit 1
> +printf "\\351" 2>/dev/null \
> +  | LC_ALL=C tr "\\351" x | LC_ALL=C grep x > /dev/null \
> +  || exit 1
>  f_local_() { local v=1; }; f_local_ || exit 1
>  f_dash_local_fail_() { local t=$(printf " 1"); }; f_dash_local_fail_
>  score_=10

Thanks, Bruno.
I've also made this tiny additional change:

 LC_ALL=en_US.UTF-8 printf "\\351" 2>/dev/null \
-  | LC_ALL=C tr "\\351" x | LC_ALL=C grep x > /dev/null \
+  | LC_ALL=C tr "\\351" x | LC_ALL=C grep "^x$" > /dev/null \
   || exit 1
 printf "\\351" 2>/dev/null \
-  | LC_ALL=C tr "\\351" x | LC_ALL=C grep x > /dev/null \
+  | LC_ALL=C tr "\\351" x | LC_ALL=C grep "^x$" > /dev/null \



reply via email to

[Prev in Thread] Current Thread [Next in Thread]