9 Sep
2014
9 Sep
'14
5:45 a.m.
On Tue Sep 09 2014 at 2:20:24 AM Andrzej Krzemienski
I went to see how Boost.Variant addresses this problem. Interestingly, it doesn't.
#include
struct Wrapper { operator int () { return 9; } operator boost::variant
() { return 7; } }; int main() { boost::variant
v = Wrapper(); assert(boost::get<int>(v) == 7); } This program assertion-fails on MSVC.
Okay, that's interesting. What's the process here, do we file a bug to Microsoft? Send in a defect report to the committee? Do we know the clauses in the standard that's supposed to make this "do the right thing"?