--- Dave Mitchell <[EMAIL PROTECTED]> wrote:
> On Tue, Jul 26, 2005 at 03:29:43PM +0100, Nicholas
> Clark wrote:
> > On Tue, Jul 26, 2005 at 07:22:55AM -0700, rajarshi
> das wrote:
> > > Hi,
> > > I made the following modifications to utf8.c :
> > > #ifdef EBCDIC
> > > uv = NATIVE_TO_UTF(uv);
> > > #endif
> >
> > Where in utf8.c? Your description of what you
> changed is inadequate for
> > anyone else to understand the context of your
> change.
> >
> > > I tried redoing it with a clean build, but it
> still
> > > fails.
> > >
> > > Why does configpm generate errors ?
> >
> > I don't know. I don't fully understand the
> workings of how perl's UTF-8
> > implementation is supposed to work on EBCDIC
> platforms.
> >
> > 1: Is that the only change you've made to the
> source code?
> > 2: Without that change, how does your build fail?
> How do the errors differ?
>
> And some further questions:
>
> what exactly was the change you made? Did you wrap
> the existing
> uv = NATIVE_TO_UTF(uv)
> line with #ifdef, #endif; or did you add three extra
> lines somewhere, and
> if so, where? The usual way of providing this
> information is as the output
> of the diff command (if your system supports it), in
> fact preferably
> 'diff -u'.
Here's the diff output :
--- utf8.c 2004-11-17 18:22:09.000000000 +0530
+++ utf8.c.1 2005-07-26 20:50:11.000000000 +0530
@@ -363,7 +363,9 @@ Perl_utf8n_to_uvuni(pTHX_ U8 *s,
STRLEN
warning = UTF8_WARN_EMPTY;
goto malformed;
}
-
+#ifdef EBCDIC
+ uv = NATIVE_TO_UTF(uv);
+#endif
if (UTF8_IS_INVARIANT(uv)) {
if (retlen)
*retlen = 1;
>
> Why have you made this change?
I made this change since the value of uv is such that
in the subsequent call (immediately after the change)
:
if UTF8_IS_INVARIANT(uv),
UTF8_IS_INVARIANT evaluates to false which is
incorrect. It is supposed to evaluate to true.
Did you read
> somewhere that it was
> necessary, and if so, where did you read this? (Url
> please.) If not,
> how did you come to the conclusion that the change
> was required? And what
> problem were you trying to fix?
This is based on a comparison with other sample values
of 'uv' in which case the condition mentioned above
evaluates to true (and in which case, the test case
that I run passes).
>
> Dave
Thanks,
Rajarshi.
>
> --
> Hofstadter's Law:
> It always takes longer than you expect, even when
> you take into account
> Hofstadter's Law.
>
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com