Re: [pcre-dev] [Bug 1222] New: Test failures on powerpc-darw…

Página Principal
Apagar esta mensagem
Autor: Philip Hazel
Data:  
Para: 1222
CC: pcre-dev
Assunto: Re: [pcre-dev] [Bug 1222] New: Test failures on powerpc-darwin8
On Tue, 27 Mar 2012, David Fang wrote:

> Test 3: locale-specific features (using 'fr_FR' locale)
> --- ./testdata/testoutput3      2009-09-26 08:38:59.000000000 -0700
> +++ testtry     2012-03-26 13:50:30.000000000 -0700
> @@ -156,7 +156,7 @@
>  ------------------------------------------------------------------
>          Bra
>          [A-Za-z\xaa\xb5\xba\xc0-\xd6\xd8-\xf6\xf8-\xff]
> -        [a-z\xb5\xdf-\xf6\xf8-\xff]
> +        [a-z\xaa\xb5\xba\xdf-\xf6\xf8-\xff]
>          [A-Z\xc0-\xd6\xd8-\xde]
>          Ket
>          End


This is a disagreement in your locale vs my locale about the status of
the characters xaa and xba (you think they are alphabetic in the French
locale; I don't). You can almost certainly ignore this issue.

> Test 8: DFA matching main functionality
> --- ./testdata/testoutput8      2011-12-28 08:57:54.000000000 -0800
> +++ testtry     2012-03-26 13:50:50.000000000 -0700
> @@ -979,7 +979,7 @@
>     abc\P
>  Partial match: abc
>     def\R 
> - 0: def
> +No match


These DFA differences are more interesting.

> Complete build/test log at: http://paste.lisp.org/display/128579
>
> Are these failures fatal? Is this library still usable?
> Locale is known to be quirky on OS X 10.4 (darwin8).
> Let me know what other information I can provide.


If you are going to use the normal (not DFA) matching, then the library
is definitely usable. Even if you want to use DFA, the differences
appear to be only in partial matching, so if you aren't using that, you
should be able to use pcre_dfa_exec() as well as pcre_exec().

The tests that fail are all concerned with re-starting a match after a
partial match (the \R option). This relies on the same workspace being
passed back to pcre_dfa_exec(). I wonder what is different in your
environment from the many others that have not reported errors in this
area?

I will eyeball the code to see if anything obvious springs to mind. I
may need to email you testing versions of pcre_dfa_exec.c with debugging
print additions to try to track down what is happening. The relevant bit
of code is around line 530 of pcre_dfa_exec.c if you feel like poking
around yourself.

Philip

--
Philip Hazel