|
Boost : |
From: John Maddock (john_at_[hidden])
Date: 2007-11-01 13:33:53
Gennadiy Rozental wrote:
> John Maddock <john <at> johnmaddock.co.uk> writes:
>
>>
>> Now that the Sun regression tests have started up again (with thanks
>> to Noel Belcourt and Sandia), Boost.Test is failing to build on that
>> platform: see http://tinyurl.com/ywm486 for an example but there are
>> probably other errors as well.
>>
>> I wonder if this is as simple as missing the correct includes?
>> Certainly to use ::perror you would need <stdio.h> rather than
>> <cstdio> (as the latter only defines std::perror). I wonder if this
>> is the cause of not finding snprintf as well?
>
> Can you add
>
> #if defined(__SUNPRO_CC)
> # include <stdio.h>
> #endif
>
> in BOOST_SUN_BASED_DEBUG section of debug.ipp configuration. I can do
> it later today.
I committed a slightly different patch earlier today:
http://svn.boost.org/trac/boost/changeset/40639/trunk/boost/test/impl/debug.ipp
Note that regardless of the platform, <stdio.h> is required in order to use
::snprintf and all of <sys/stat.h>, <sys/wait.h> and <sys/time.h> is
required to use ::select, so while it *may* be compiling on other platforms,
it's kind of by accident, and these headers should really always be included
when using those API's.
HTH, John.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk