Boost logo

Boost :

From: JOAQUIN LOPEZ MU?Z (joaquin_at_[hidden])
Date: 2004-03-11 16:30:27

----- Mensaje original -----
De: David Abrahams <dave_at_[hidden]>
Fecha: Jueves, Marzo 11, 2004 9:19 pm
Asunto: [boost] Re: Boost 2 - development in long term

> Robert Geiman <rgeiman_at_[hidden]> writes:
> > My point is, there will be a point in time where most compilers
> > support template partial specialization, etc, and all that extra
> code> that adds support to outdated compilers is way more trouble
> than it'll
> > be worth. We obviously aren't at that point right now, but at some
> > point we will be.
> >
> > I don't think having Boost 2.x contain NO compiler hacks is a good
> > thing, but it would be nice if there was a Boost feature list of all
> > C++ features compilers must support to use Boost. These features
> > could be added to the list when it's generally accepted that most
> > compilers support these features, so then library writers can stop
> > writing hacks to support those outdates compilers and even remove
> > hacks to make the code smaller, cleaner, and easier to
> understand and
> > maintain.

Not that I love the idea of Boost 2 (B2 in the following),
but maybe there's a reasonably manageable way to automate
some of the process of converting Boost libraries into B2

* Identify the few compilers/stdlibs qualifying as B2
* Take the set of BOOST_NO_XXX macros in Boost.Config
applying to any of the B2 compilers/stdlibs. Let us call
these B2 defects.
* Create an automatic tool that takes the source code
of a B1 library and:
  - remove all #ifdef BOOST_NO_XXX sections where
  BOOST_NO_XXX is *not* a B2 defect.
  - remove all BOOST_WORKAROUND sections where
  the compiler/stdlib is not B2.
This tool hopefully would give a compilable
B2 source code, or at least something simple to
get correct by manual postprocessing.

Joaquín M López Muñoz
Telefónica, Investigación y Desarrollo

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