On 19 February 2014 22:49, Karl Williamson <pub...@khwilliamson.com> wrote:
> On 02/19/2014 03:43 PM, Karl Williamson wrote:
>>
>> On 02/19/2014 03:22 PM, Steve Hay wrote:
>>>
>>> On 19 February 2014 22:07, Karl Williamson <pub...@khwilliamson.com>
>>> wrote:
>>>>
>>>> In perl.git, the branch blead has been updated
>>>>
>>>>
>>>> <http://perl5.git.perl.org/perl.git/commitdiff/89f7b9aac23a02ff8140b277b76eb7a70b0b04cc?hp=63baef57e83f77e202ae14ef902a6615cf69c8a2>
>>>>
>>>>
>>>> - Log -----------------------------------------------------------------
>>>> commit 89f7b9aac23a02ff8140b277b76eb7a70b0b04cc
>>>> Author: Karl Williamson <pub...@khwilliamson.com>
>>>> Date:   Wed Feb 19 14:55:29 2014 -0700
>>>>
>>> [...]
>>>>
>>>> +    /* Here the input locale was LC_ALL, and we have set it to what
>>>> is in the
>>>> +     * LANG variable.  But LANG has lower priority than the other
>>>> LC_foo
>>>> +     * variables, so override it for each one that is set.  (If they
>>>> are set to
>>>> +     * "", it means to use the same thing we just set LC_ALL to, so
>>>> can skip)
>>>> +     * */
>>>> +#   ifdef USE_LOCALE_TIME
>>>> +    result = PerlEnv_getenv("LC_TIME");
>>>> +    if (result and strNE(result, "")) {
>>>
>>>
>>> You mean "&&", not "and", right?...
>>>
>>> ..\locale.c(433) : error C2146: syntax error : missing ')' before
>>> identifier 'and'
>>> ..\locale.c(433) : warning C4013: 'and' undefined; assuming extern
>>> returning int
>>> ..\locale.c(433) : error C2059: syntax error : ')'
>>> ..\locale.c(433) : error C2143: syntax error : missing ';' before '{'
>>> ..\locale.c(439) : error C2146: syntax error : missing ')' before
>>> identifier 'and'
>>> ..\locale.c(439) : error C2059: syntax error : ')'
>>> ..\locale.c(439) : error C2143: syntax error : missing ';' before '{'
>>> ..\locale.c(445) : error C2146: syntax error : missing ')' before
>>> identifier 'and'
>>> ..\locale.c(445) : error C2059: syntax error : ')'
>>> ..\locale.c(445) : error C2143: syntax error : missing ';' before '{'
>>> ..\locale.c(451) : error C2146: syntax error : missing ')' before
>>> identifier 'and'
>>> ..\locale.c(451) : error C2059: syntax error : ')'
>>> ..\locale.c(451) : error C2143: syntax error : missing ';' before '{'
>>> NMAKE : fatal error U1077: '"c:\Program Files (x86)\Microsoft Visual
>>> Studio 10.0\VC\BIN\cl.EXE"' : return code '0x2'
>>> Stop.
>>>
>>
>> SInce the deadline for the release is just about now, and our only
>> Windows smoker keeps hanging, I'm unable to fully test this on my
>> machine, so I'm relying on the kindness of other porters to get this
>> fixed soon.  Several new patches are about to be pushed.  I'd appreciate
>> it if you try them out like you just did.
>
>
> Now pushed, as 730252b299f0cde0043bed7edb5bcf0c3e37fd38
>
> I did test the function on my machine by faking out the #ifdef's.  But I was
> using g++, where 'and' is a synonym for &&.  Before pushing, I compiled with
> gcc, but here, the #ifdefs weren't faked.

I understand. Sorry - I didn't mean to sound rude. I really appreciate
your efforts on this. It can't be easy coding "blind", as you are.

At 730252b299f0cde0043bed7edb5bcf0c3e37fd38 blead builds but I still
have run/locale.t failing 4,5 and 7:

C:\Dev\Git\perl\t>.\perl harness -v run/locale.t
run/locale.t ..
1..19
ok 1 - no locales where LC_NUMERIC breaks
ok 2 - LC_NUMERIC without environment nor setlocale() has no effect in any local
e
# using the 'Albanian' locale for LC_NUMERIC tests
ok 3 - format() does not look at LC_NUMERIC without 'use locale'
# Failed test 4 - format() looks at LC_NUMERIC with 'use locale' at
./test.pl line 982
#      got "4.2"
# expected "4,2"
# PROG:
# use locale;
# format STDOUT =
# @.#
# 4.179
# .
# write;
# STATUS: 0
not ok 4 - format() looks at LC_NUMERIC with 'use locale'
# Failed test 5 - format() looks at LC_NUMERIC with 'use locale
":not_characters"' at ./test.pl line 982
#      got "4.2"
# expected "4,2"
# PROG:
# use locale ":not_characters";
# format STDOUT =
# @.#
# 4.179
# .
# write;
# STATUS: 0
not ok 5 - format() looks at LC_NUMERIC with 'use locale ":not_characters"'
ok 6 - too late to look at the locale at write() time
# Failed test 7 - too late to ignore the locale at write() time at
./test.pl line 982
#      got "4.2"
# expected "4,2"
# PROG:
# use locale;
# format STDOUT =
# @.#
# 4.179
# .
# { no locale; write; }
# STATUS: 0
not ok 7 - too late to ignore the locale at write() time
ok 8 - version does not clobber version
ok 9 - version does not clobber version (via eval)
ok 10 - sprintf() and printf() look at LC_NUMERIC regardless of constant folding
ok 11 - Uses the above test to verify that on Windows the system
default locale has lower priority than LC_NUMERIC
ok 12 - LANG is used if LC_ALL, LC_NUMERIC are invalid
ok 13 # skip Win32 uses system default locale in preference to "C"
ok 14 - No compile error on v-strings when setting the locale to
non-dot radix at compile time when default environment has non-dot
radix
ok 15 - Radix print properly in locale scope, and without
ok 16 - Can do math when radix is a comma
ok 17 - POSIX::strtod() uses underlying locale
ok 18 - /il matching of [bracketed] doesn't skip POSIX class if fails
individ char
ok 19 - /l matching of [bracketed] doesn't skip non-first POSIX class
Failed 3/19 subtests
        (less 1 skipped subtest: 15 okay)

Test Summary Report
-------------------
run/locale.t (Wstat: 0 Tests: 19 Failed: 3)
  Failed tests:  4-5, 7
Files=1, Tests=19,  3 wallclock secs ( 0.01 usr +  0.00 sys =  0.01 CPU)
Result: FAIL

Reply via email to