Унифицированный вектор инициализации строк вызывает ошибку дезинфицирующего адреса

Ранее у меня был код, который создавал бы вектор строк и добавлял один элемент через:

std::vector<std::string> attempt_one;
attempt_one.emplace_back( "Hello, world!" );

Этот код компилируется и работает как положено. Если я попытаюсь вместо этого создать вектор строк как

std::vector<std::string> attempt_two{ "Hello, world!" };

код компилируется нормально, но при компиляции с включенным дезинфектором адреса код завершается ошибкой во время выполнения с ошибкой:

Sanitizer CHECK failed: /...long_path.../asan_mapping.h:179 ((AddrIsInMem(p))) != (0) (0, 0)

Что за ошибка во второй попытке создать вектор, который вызывает эту ошибку? Для справки это Clang 3.7 с включенным -std = c ++ 11 и дезинфицирующим средством для адресов.

0

Решение

Задача ещё не решена.

Другие решения


По вопросам рекламы [email protected]