Boost logo

Boost :

From: Michael Glassford (glassfordm_at_[hidden])
Date: 2004-07-17 10:39:42


Rene Rivera wrote:
> 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 :-)

OK.

>> 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.

Yes, but I'm not doing this.

> 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.

OK.

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

I'll look.

> 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 think I've fixed these.

> 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..)

Yes.

> 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 ======

Thanks, I'll look into this.

Mike


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