Boost logo

Boost :

From: Rene Rivera (grafik.list_at_[hidden])
Date: 2004-07-17 00:05:10


Michael Glassford wrote:

> Rene Rivera wrote:
>
>> # if defined(_WIN32) || defined(__WIN32__) || defined(WIN32) \
>> || defined(__CYGWIN__)
>
> I fixed this particular error by moving the 2nd line onto the end of the
> first, not realizing that the linebreaks were the problem. Feel free to
> move it back if you want.

I just left it as you last changed it :-)

> I've just checked in some changes, and don't plan to do anything else
> for some time, probably not for a couple of days. Please do.

OK. All done. With much better results.

> I wish I knew why they are wrong in the first place.

Usually it happens when you tell CVS to use different line endings than
your platform uses. The most common case I've seen is when people
cross-mount a repository on Linux and Windows.

PS. The only error on CW is now:

### mwcc Compiler:
# File: ..\src\read_write_mutex.cpp
# ------------------------------------
# 44: EXT("Assertion failed (func=%s, file=%s, line=%d): %s"),
func, file, line, expr);
# Error:
                   ^
# undefined identifier 'snprintf'

Which happens because for CW this is supposed to be std::snprintf (the
_sntprintf resolves to snprintf). Adding a "using namespace std;" in the
function solves that problem.

Now the tests run, and some happen to fail :-(

More things that are suspicious...

### mwcc Compiler:
# File: ..\src\read_write_mutex.cpp
# ------------------------------------
# 412: }
# Warning: ^
# return value expected
### mwcc Compiler:
# 526: }
# Warning: ^
# return value expected
### mwcc Compiler:
# 584: }
# Warning: ^
# return value expected
### mwcc Compiler:
# 613: }
# Warning: ^
# return value expected

I don't know what the intent on those are, so I leave you to fix that.

Another possible problem, although not on VC and CW, is the use of the
auto-link support in the tests. For CW it causes warnings:

### mwld Linker Warning:
# Cannot locate library "boost_thread-cw8-mt-1_31" specified in
#pragma comment(lib,...)

But others will causes errors. Adding "<define>BOOST_ALL_NO_LIB=1" to
the test target requirements disables the auto-link code.

OK to commit those two changes? (the using.., and define..)

That leaves the one and only runtime failure:

execute-test
C:\Boost\bin\boost\libs\thread\test\test_read_write_mutex.test\cw\release\threading-multi\test_read_write_mutex.run
====== BEGIN OUTPUT ======
Running 1 test case...
plain test, sp=0
try test, sp=0
timed test, sp=0
plain test, sp=1
try test, sp=1
timed test, sp=1
plain test, sp=2
try test, sp=2
timed test, sp=2
test_read_write_mutex.cpp(206): error in "test_read_write_mutex": test
r2.m_value == 10 failed
plain test, sp=3
try test, sp=3
timed test, sp=3

*** 1 failure detected in test suite "Boost.Threads: read_write_mutex
test suite"

EXIT STATUS: 201
====== END OUTPUT ======

-- 
-- Grafik - Don't Assume Anything
-- Redshift Software, Inc. - http://redshift-software.com
-- rrivera/acm.org - grafik/redshift-software.com - 102708583/icq

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk