|
Boost : |
From: Anthony Williams (anthony_w.geo_at_[hidden])
Date: 2006-08-09 06:27:21
Aleksey Gurtovoy <agurtovoy_at_[hidden]> writes:
> Anthony Williams writes:
>> I've been trying to run some regression tests today using
>> regression.py. After a few false starts, bjam ran to the end, but
>> now process_jam_logs won't run --- every time it runs it thinks for
>> a few seconds, and then quits with the message:
>>
>> **** exception(205): std::out_of_range: invalid string position
>> ******** errors detected; see standard output for details ********
>>
>> Any thoughts?
>
> Seems like it's being fed an unexpected input. Unfortunately,
> process_jam_log doesn't have a logging option, and the easiest way to
> see what exactly it chockes on would be to run it under debugger, with
> the command line extracted from the regression.py's log.
The error is in parse_skipped_msg_aux, trying to parse the message
...skipped <@boost!libs!parameter!test\python-parameter-test.test\gcc\debug>python-parameter-test.run for lack of <CYGWIN_EXE@>python2.4.exe...
The CYGWIN_EXE@ bit is causing confusion on line 232 (CVS HEAD version) ---
there is no path separator in "CYGWIN@", so the insert is failing (with an
out_of_range exception), as the call to dir.find is returning
std::string::npos.
Changing line 232 to two lines:
string::size_type path_sep_pos=dir.find( '/', start_pos + 1);
dir.insert( (path_sep_pos==string::npos)?dir.size():path_sep_pos,"/bin" );
allows it to run to completion --- I have now run collect_and_upload_logs, so
the results should be available soon.
Maybe I should set PYTHON_ROOT (my python installation lives in
c:\local\python24), but it should work without it set.
Anthony
-- Anthony Williams Software Developer Just Software Solutions Ltd http://www.justsoftwaresolutions.co.uk
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk