Boost logo

Boost :

From: Peter Dimov (pdimov_at_[hidden])
Date: 2002-03-08 06:58:15


From: "Fernando Cacciola" <fcacciola_at_[hidden]>
> From: "Peter Dimov" <pdimov_at_[hidden]>
> > From: "Fernando Cacciola" <fcacciola_at_[hidden]>
> > [...]
> > > I also noticed that the bind placeholders have changed in the new
> version,
> > > but the change doesn't solve the Borland problem.
> > >
> > > As it has been mentioned before, the solution is to declare those
> > variables
> > > 'extern' (except once in some TU).
> >
> > And of course there's also the problem that _1 is fine in the unnamed
> > namespace but illegal at file scope. :-(
> >
> >
> >
> In both cases, identifiers are visible at global scope, thus, they have
just
> exactly the same probability of clashing with other names at compile time.

Identifiers that start with '_' are illegal at file scope per 17.4.3.1.2.

I think that the best way to tackle the problem is to leave
boost/bind/placeholders.hpp as it is. You are free to #define
BOOST_BIND_NO_PLACEHOLDERS and use your own placeholders.hpp with whatever
definitions are appropriate in your case.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk