On Tue, 26 Mar 2019 at 12:18, dariomt--- via Boost
Well, Boost.Variant has been around so much more time than std::variant, so this seems obvious to me.
This is bound to be the case as Boost pretended to be the breeding ground for the STL. This seems to have changed slightly nowadays. Things are included in the STL, by-passing Boost and conversely Boost is now on its way to re-do functionality that's already standardized. Also, I'd say the cost of migrating from Boost.Variant to std::variant is
non-zero, and the benefits are not clear (to me), so I'd expect not many people to undergo this migration.
One advantage is that every-one using a C++17 compiler has a STL that includes an implementation (no downloading, building, maintaining etc.). Well, in my (limited) experience Boost is ubiquitous, so being in std is
not that much of a head start.
Boost itself is built upon the (a) STL, so surely the STL is by definition more ubiquitous than Boost. C++17-STL probably isn't, I'd agree with that, but this is just a temporary situation (and is changing rapidly in my opinion). I wonder if code dealing explicitly with valueless_by_exception() will
break if you make this change.
Picking a whatever::variant will/has become rocket-science [on top of everything else that modern C++ throws at you]. degski -- *Microsoft, please kill Paint3D*