bug-bison
[Top][All Lists]
Advanced

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

Re: [PATCH 10/11] quote consistently and make tests pass with new quotin


From: Jim Meyering
Subject: Re: [PATCH 10/11] quote consistently and make tests pass with new quoting from gnulib
Date: Mon, 23 Jan 2012 15:34:59 +0100

Akim Demaille wrote:
> Le 18 janv. 2012 à 11:30, Jim Meyering a écrit :
>
>> lib/.gitignore      |   16 +++++++++
>> m4/.gitignore       |    9 +++++
>> src/scan-code.l     |   38 ++++++++++----------
>> src/scan-gram.l     |   24 +++++++-------
>> src/symtab.c        |    4 +-
>> submodules/autoconf |    2 +-
>> tests/actions.at    |   72 ++++++++++++++++++++--------------------
>> tests/input.at      |   42 +++++++++++-----------
>> tests/named-refs.at |   92 +++++++++++++++++++++++++-------------------------
>> tests/output.at     |   12 +++---
>> tests/regression.at |   32 +++++++++---------
>> 11 files changed, 184 insertions(+), 159 deletions(-)
>
> Installed as attached.  Yet I have failures on my system
> (on master too):
>
>> address@hidden ~/src/bison-2.5 $ cat
>> _build/debug/tests/testsuite.dir/001/testsuite.log
>> #                             -*- compilation -*-
>> 1. input.at:27: testing Invalid $n and @n ...
>> ../../../tests/input.at:35: VALGRIND_OPTS="$VALGRIND_OPTS
>> --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS;
>> bison input.y
>> --- -        2012-01-23 14:09:26.000000000 +0100
>> +++
>> /Users/akim/src/bison-2.5/_build/debug/tests/testsuite.dir/at-groups/1/stderr
>> 2012-01-23 14:09:26.000000000 +0100
>> @@ -1,3 +1,3 @@
>> -input.y:2.13-14: integer out of range: '$1'
>> -input.y:3.13-14: integer out of range: '@1'
>> +input.y:2.13-14: integer out of range: ‘$1’
>> +input.y:3.13-14: integer out of range: address@hidden
>>
>> 1. input.at:27: 1. Invalid $n and @n (input.at:27): FAILED (input.at:35)
>> address@hidden ~/src/bison-2.5 $ locale
>> LANG="fr_FR.UTF-8"
>> LC_COLLATE="fr_FR.UTF-8"
>> LC_CTYPE="fr_FR.UTF-8"
>> LC_MESSAGES="fr_FR.UTF-8"
>> LC_MONETARY="fr_FR.UTF-8"
>> LC_NUMERIC="fr_FR.UTF-8"
>> LC_TIME="fr_FR.UTF-8"
>> LC_ALL=
>
> I had never realized that the tests are not specifying LC_ALL=C
> and they should.  But even when I do, I still have nice quotes.

Hi Akim,

Maybe you need to set LANG to empty or to C?
glibc honors LANG (erroneously, imho)

> I don't see any getenv in quotearg.c to disable this.  How am I
> supposed to go back to simple single quotes?
>
> This also made me realize that it means that our test wrapper,
> test/bison, does not find its localization files.  It should: it
> should strictly mock an installed bison, it is the test suite
> which should set LC_ALL=C.
>
> (And for my information, why is this function not-pure ?

Because it may fail to return normally (abort).

> /* Return quoting options for STYLE, with no extra quoting.  */
> static struct quoting_options /* NOT PURE!! */
> quoting_options_from_style (enum quoting_style style)
> {
>   struct quoting_options o = { 0 };
>   if (style == custom_quoting_style)
>     abort ();
>   o.style = style;
>   return o;
> }
>
> )



reply via email to

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