Boost logo

Boost :

From: Jeff Garland (jeff_at_[hidden])
Date: 2006-07-23 12:26:55


Beman Dawes wrote:
> system-0.2.zip has been posted in the file vault. See the "system"
> directory at http://boost-consulting.com/vault/
>
> This is a major upgrade, reflecting comments and suggestions from many
> Boosters, but in particular Chris Kohlhoff and Peter Dimov.
>
> Important changes include:

The identifier is a interesting. I've got some similar code lying around. I
think I might call it type_wrapper, type_generator, or something like that.
identifier doesn't really communicate the purpose in my mind.

>...snip details ...
>
> * More extensive testing, with all tests passing for late-model GCC,
> CodeWarrior, Intel, and Microsoft compilers on Windows, and GCC on the
> Mac. Not tested yet on Linux.

Ok, I've tried compiling this on Linux. Couple problems.

1) Missing boost/cerrno.hpp in src/error_code.cpp

#include <boost/cerrno.hpp>

This file is not in the package. Commenting it out on the theory that it
might have been replaced leads to:

2) Invalid char* to int conversion

~/devTools/boost_cvs/libs/system/build$ bjam
...found 225 targets...
...updating 14 targets...
gcc-C++-action
../../../bin/boost/libs/system/build/libboost_system.a/gcc/debug/error_code.o
../src/error_code.cpp: In function ‘std::string<unnamed>::errno_md(const
boost::system::error_code&)’:
../src/error_code.cpp:190: error: invalid conversion from ‘char*’ to ‘int’
../src/error_code.cpp:190: error: ‘ERANGE’ was not declared in this scope
../src/error_code.cpp:197: error: ‘EINVAL’ was not declared in this scope
../src/error_code.cpp: In member function ‘int
boost::system::error_code::to_errno() const’:
../src/error_code.cpp:274: error: ‘EOTHER’ was not declared in this scope

///that's the while condition here...

     char buf[64];
     char * bp = buf;
     std::size_t sz = sizeof(buf);
     int result;
     while ( (result = strerror_r( ec.value(), bp, sz )) == ERANGE )
     {
       if ( sz > sizeof(buf) ) std::free( bp );
       sz *= 2;

Jeff


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