The non-variant version of initializer list works good:
std::map<int, double> a = {{1,0.1}};
But the variant version doesn't:
std::variant<std::map<int, double>, int> b = {{1,0.1}};
Is there a way to initialize b using initializer list? If not, what is the best way to initialize it?