stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Farid Zaripov" <>
Subject ios_bits.cpp and MSVC
Date Wed, 24 Oct 2007 17:36:26 GMT
  I'm working on STDCXX-437 issue and I've removed almost all MSVC 6.0
code, but I found some #if expression that I don't understand.

src/ios_bits.cpp, line 84
#if !defined (_MSC_VER) || (_MSC_VER <= 1300)

_RWSTD_DEFINE_STATIC_CONST (const ios_base::seekdir ios_base::beg);
_RWSTD_DEFINE_STATIC_CONST (const ios_base::seekdir ios_base::cur);
_RWSTD_DEFINE_STATIC_CONST (const ios_base::seekdir ios_base::end);

#endif // !defined (_MSC_VER) || (_MSC_VER <= 1300)

  This part of code used only on non-MSVC and MSVC <= 7.0.
So these lines are excluded only on MSVC > 7.0. Why?

  BTW the same definitions of the static constants are present
in src/ctype_bits.cpp but withound any #if expressions:

src/ctype_bits.cpp, line 39
_RWSTD_DEFINE_STATIC_CONST (const ctype_base::mask ctype_base::space);
_RWSTD_DEFINE_STATIC_CONST (const ctype_base::mask ctype_base::print);
_RWSTD_DEFINE_STATIC_CONST (const ctype_base::mask ctype_base::cntrl);
_RWSTD_DEFINE_STATIC_CONST (const ctype_base::mask ctype_base::upper);
_RWSTD_DEFINE_STATIC_CONST (const ctype_base::mask ctype_base::lower);
_RWSTD_DEFINE_STATIC_CONST (const ctype_base::mask ctype_base::alpha);
_RWSTD_DEFINE_STATIC_CONST (const ctype_base::mask ctype_base::digit);
_RWSTD_DEFINE_STATIC_CONST (const ctype_base::mask ctype_base::punct);
_RWSTD_DEFINE_STATIC_CONST (const ctype_base::mask ctype_base::xdigit);
_RWSTD_DEFINE_STATIC_CONST (const ctype_base::mask ctype_base::alnum);
_RWSTD_DEFINE_STATIC_CONST (const ctype_base::mask ctype_base::graph);

  The ctype_base::mask and ios_base::seekdir both are typedefs

include/loc/_ctype.h, line 73:
    typedef _RWSTD_BITMASK_ENUM (_RW::__rw_ctype_mask) mask;

include/rw/_iosbase.h, line 202:
    typedef _RWSTD_BITMASK_ENUM (_RW::__rw_seekdir) seekdir;


View raw message