Boost logo

Boost :

From: Daniel Frey (daniel.frey_at_[hidden])
Date: 2002-06-26 04:00:38

Maciej Sobczak wrote:
> Would it be justified to make some minimal version of Boost (or at least
> some part of it) for decent compilers? (kidding)

Why you say 'kidding'? I think it is a valid point for a very subtle
reason: Boost adds lots of work-around for broken compilers. This makes
the code not what it should be, as things are not as direct as they
should be. We write

  BOOST_STATIC_CONSTANT( int, value = 42 * sizeof( T ) );

instead of

  enum { value = 42 * sizeof( T ) };

thus adding layers just for broken compilers. Besides the effect on
boost itself, there is also an effect on the compilers: Why should the
vendor fix its compiler if the boost compiler status pages say "OK, it
works"? I think it was already mentioned that a lot of compiler vendors
are paying attention to what boost is doing, so why not put a reasonable
amount of pressure on them? I imaging something like a tri-state to
indicate the compiler status:

  OK / Fails (but workaround is provided, thus it's OK) / Fails

> I know that once the whole Boost gets included in C++0x (:-)), the
> problem will vanish - today nobody cares about the dependencies between
> standard headers - but at the moment it bothers me a bit.

Problems will vanish if compilers get fixed and the old versions are

At that time, Boost 2.0 will remove all ballast from the past. (kidding?

Regards, Daniel

Daniel Frey
aixigo AG - financial training, research and technology
Schloß-Rahe-Straße 15, 52072 Aachen, Germany
fon: +49 (0)241 936737-42, fax: +49 (0)241 936737-99
eMail: daniel.frey_at_[hidden], web:

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