Boost logo

Boost :

Subject: Re: [boost] [foreach] use of boost_foreach_argument_dependent_lookup_hack
From: Gavin Lambert (gavinl_at_[hidden])
Date: 2015-07-15 00:28:46

On 15/07/2015 16:08, Andrey Semashev wrote:
> If there are config macros to disable the offending macros then that's
> the solution. I realize it's difficult for Qt and Apple to turn them on
> by default but this shouldn't be that hard for their users. And perhaps
> it should be advertised as the recommended way of working with Qt.
> Eventually, this should become headache for Qt devs and those who use
> these macros in API, not for us.

The problem is that if someone has a large existing Qt application that
actually uses these macros (ie. the program fails to compile if the
macros are disabled), and then Boost comes along and refuses to compile
unless the macros are disabled, then it is more likely that the end user
will simply not use Boost than that they will change their existing
code. Whereas I assume that the goal of a library is to encourage
people to use it.

Frameworks are bigger than libraries; libraries have to accommodate
frameworks, rather than the reverse. And while the user is allowed to
decide to globally disable the framework's macros or not, a library is
not. (At least not in public headers; it gets a bit more freedom in
compiled source, but that's seldom an issue.)

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