Boost logo

Boost :

From: Joaquín Mª López Muñoz (joaquin_at_[hidden])
Date: 2004-07-09 05:34:48

Martin Wille ha escrito:

> Joaquín Mª López Muñoz wrote:
> > Regression tests for Linux are updating OK every day, but
> > the advanced developer and user reports seem to be stuck
> > at Jul 5th.
> The problem is a parse error produces by xsltproc while parsing
> test_results.xml in order to build extended_test_results.xml:
> # Merging with expected results...
> # xsltproc -o
> /boost/head-regression/results/cs-Linux/extended_test_results.xml
> --param expected_results_file
> "'/boost/head-regression/etc/result-release-1_31_0.xml'" --param
> failures_markup_file
> "'/boost/head-regression/boost/status/explicit-failures-markup.xml'"
> "/boost/head-regression/boost/tools/regression/xsl_reports/xsl/add_expected_results.xsl"
> "/boost/head-regression/results/test_results.xml"
> /boost/head-regression/results/test_results.xml:4627: parser error :
> internal error
> pp(380): error in "trim_test": test bcs1 == LITERAL( "abcd" ) failed [L?
> ??? ?T?
> ^

I've inspected the problem and seems to me that test_results.xml
has been fed unicode-like characters, which results in null bytes
being inserted and the XML parser complaining.

The first offending test is in line 280 of basic_cstring_test.cpp
(part of Boost.Test own test suite)

BOOST_CHECK_EQUAL( bcs1, LITERAL( "abcd" ) );

When this check fails, an indication is outputted to the console
*that also prints the values of the compared objects* (strings,
in this case.) This test is run both for char and wchar_t variants,
so I guess the problem happens on the latter case.


Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo

Boost list run by bdawes at, gregod at, cpdaniel at, john at