Subject: Re: [boost] [foreach] use of boost_foreach_argument_dependent_lookup_hack
From: Tim Blechmann (tim_at_[hidden])
Date: 2015-07-14 13:13:02
>>> template<typename SuperMeta,typename TagList>
>>> inline boost::mpl::true_* boost_foreach_is_noncopyable(
>>> return 0;
>>> Unfortunately Qt (in some configuration modes, at least), defines
>>> a macro foreach to Q_FOREACH, which produces the following problem,
>>> even if Boost.Foreach was not intended to be used:
>> btw, this can easily be workarounded by using push_macro/pop_macro
>> pragmas on the most widely used compilers.
> I'm rather conversative and prefer a pragma-free workaround: I don't
> know which exact compiler versions support push_macro etc.
it is supported by msvc for ages and by gcc since 4.6 and clang ...
>> i've submitted some pull requests about this for several libraries, but
>> some devs prefer to blame qt for introducing pseudokeywords instead of
>> merging the workarounds
> The problem is that blaming Qt puts the burden on their blameless users...
> I'm all for workarounds if they're not overkill.
simply blaming qt is much easier than merging a fix :(
iirc this fix would be needed by foreach, multiindex and flyweight ...
so definitely no overkill that would help a lot of users ...
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk