#include <iostream>
#include "variant.hpp"
struct sv {
sv(const char*) {}
};
int main() {
mpark::variant<bool, sv> v{"abc"};
std::cout << v.index() << "\n";
return 0;
}
With gcc-4.8.5, this code incorrectly prints 0.
It works for later versions of gcc (tested 7.5.0) and prints 1.
I tested against master 3c7fc82