Boost logo

Boost :

From: Paul Mensonides (pmenso57_at_[hidden])
Date: 2004-03-04 19:06:20

> [mailto:boost-bounces_at_[hidden]] On Behalf Of Jonathan Turkanis

> > #define PARAM(has_param) BOOST_PP_IF( \
> > has_param \
> > , BOOST_PP_IDENTITY(typename Param) \
> >
> Yes, that's better. It's hard to believe that VC6 could be
> the only conforming preprocessor on this point. though ;-)

It isn't that other compilers are non-conforming, they just chose a different
way to handle undefined behavior. C++ will likely soon have the new facilities
of C99's preprocessor, which will include variadic macros and placemarkers
(which would allow your original code). So, other preprocessors are just using
forward-thinking to handle the undefined behavior, while VC's preprocessor (all
the way through VC71) is just a complete relic.

Paul Mensonides

Boost list run by bdawes at, gregod at, cpdaniel at, john at