Rad Studio Rio 10.3.1, CLANG.
Простой код вызывает исключение в операторе присваивания (y = x): 'std @ bad_alloc'
typedef std::variant< std::string, int> MVariant; MVariant x=10; MVariant y; y=x;
Я не могуувидеть причину.Чего мне не хватает?
Я думаю, что проблема не в самой Rad Studio. Это о CLANG. Это известная ошибка 33222, которая, по-видимому, влияет только на stst :: Вариант libstdc ++ (и другие конструкции, использующие ту же комбинацию). Проблема связана с функцией друга для шаблонов.
Вариант из libc ++, похоже, не использует технику друзей, которую использовал libstdc ++.
См. get для вариантов сбоя в clang ++, но не в g ++