|
Boost Users : |
Subject: [Boost-users] [boost-users][serialization] porting to windows ce?
From: Bobby Nations (bwnations_at_[hidden])
Date: 2008-10-08 13:23:56
All,
I've been working to get boost-serialization running on a Windows CE
(actually Pocket PC 2003) device these last few days, and have hit a
snag. Could anyone help me with what might be causing the following
errors in the operators.hpp file?
c:\Documents and
Settings\388572\Desktop\sandbox\Boost_1_34_1\boost\libs\serialization\vc
7ide\..\..\..\boost/operators.hpp(699) : error C3083: 'detail': the
symbol to the left of a '::' must be a type
It happens at this section of code:
namespace boost {
// A type parameter is used instead of a plain bool because Borland's
compiler
// didn't cope well with the more obvious non-type template parameter.
namespace detail {
struct true_t {};
struct false_t {};
} // namespace detail
// Unspecialized version assumes that most types are not being used for
base
// class chaining. We specialize for the operator templates defined in
this
// library.
template<class T> struct is_chained_base {
::boost::detail::false_t value;
};
The error happens at the '::boost::detail::false_t value' line.
So far, I've been surrounding any mentions of the locale header file or
it's attendant classes with '#ifndef BOOST_NO_STD_LOCALE ... #endif'
blocks, which allowed me to compile about half of the .cpp files. I
also added code to use Microsoft's WideCharToMultiByte() and
MultiByteToWideChar() methods rather than using the std::wctomb() and
std::mbtowc() .
Can anyone explain why the above code throws errors? It seems to be te
final remaining hurdle to getting this working (well, sort of working
anyway).
Thanks,
Bobby Nations
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net