Boost logo

Boost Users :

Subject: Re: [Boost-users] Cannot use Boost.Croutines with range based for
From: Nat Goodspeed (nat_at_[hidden])
Date: 2014-08-28 09:18:40


On Thu, Aug 28, 2014 at 2:32 AM, Michel Morin <mimomorin_at_[hidden]> wrote:

> As per DR1442 (for C++11), the rule of range-based-for has been changed.
> ( http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#1442 )
>
> The new rule does not add namespace `std` as an associated namespace.
> So `begin` and `end` should be defined as either
>
> - member functions, or
> - as free functions in the enclosing namespaces (e.g. `boost::coroutines`).
>
> Recent gcc and clang implemented the new rule.

Please correct me if I'm wrong -- but if Oliver makes such a change
unconditionally, won't Boost.Coroutine's range-based-for support break
on older compilers?

How do other Boost libraries accommodate this change? Are there
already canonical Boost workaround macros?


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net