Вы правы, что из-за аргумента error_condition(ev,generic_category())
должно быть возвращено из default_error_condition
и, следовательно, должно быть "generic"
.
Если посмотреть на «историю» источника, на который вы ссылались, то это была ошибка libstdc ++ до самого недавнего времени (всего три месяца назад ). Это была ошибка 60555 .
Заключительный комментарий Джонатана был:
Исправлено на всех активных ветках, поэтому будет исправлено в версиях 6.5, 7.4, 8.3 и 9.1.
Итак, если бы вы обновили свой GCC 7.3 до 7.4 (который еще не существует), вы бы увидели ожидаемое поведение.