Subject: | t/20_xml_parser.t fails for 32bit RHEL, with perl5.14.2, but nothing else |
I have just built RPC-XML-0.76 for the following platforms and perls:
Platforms: 32 and 64 bit RHEL 5, Solaris 10, and AIX 6
Perls: 5.10.1, 5.12.4, and 5.14.2
I have a previously installed XML-Parser-2.41, built against expat-2.0.1, and it passed ALL of
it's test on all 18 platform/perl combinations listed above. However, RPC-XML-0.76 works
fine for 17 out of 18, but fails ONE and only one test on 32 bit RHEL5 using perl5.14.2.
The failing test is:
ok 43 - RPC::XML::Parser handles core entities
Can't locate object method "args" via package "Parse error:
error in processing external entity reference at line 9, column 34, byte 223:
<param>
<value><string>Entity test: &foo;</string></value>
=================================^
</param>
at /efs/dist/perl5/XML-Parser/2.41/.exec/x86-32.rhel.5/5.14/lib/perl5/XML/Parser.pm line
187
" (perhaps you forgot to load "Parse error:
error in processing external entity reference at line 9, column 34, byte 223:
<param>
<value><string>Entity test: &foo;</string></value>
=================================^
</param>
at /efs/dist/perl5/XML-Parser/2.41/.exec/x86-32.rhel.5/5.14/lib/perl5/XML/Parser.pm line
187
"?) at t/20_xml_parser.t line 161.
# Looks like you planned 137 tests but ran 43.
# Looks like your test exited with 255 just after 43.
If you patch the test to check the value of $ret, before deferencing it, then you will find that
all the remaining tests in this file actually pass, and it's JUST that one test that fails.
Oddly, if the same test is run under the perl debugger, it passes. I have dug into XML::Parser
just a bit, and can find no reason for the discrepancy in behavior with and without the
debugger. The inability to reproduce it in the debugger makes it far more difficult to track
down the root cause.
I have scoured my build environment for differences among these platforms, and can find
none. In all cases, the same XML-Parser installation, and the same libexpat are being used.
I am not much an XML user, personally (I'm installing this on behalf of my users), so I am not
sure where to look to figure out why this one test is failing. Since I can reproduce this easily,
I'm happy to follow up on any suggestions for where to look next.
Is it possible that my expat build on this platform is at fault? Again, any pointers on where to
look next would be appreciated.