Вопросы по теме 'ubsan'
UBSAN сообщает: -875 ‹‹ 7 как неопределенное поведение
Простой фрагмент кода:
#define FOO 7
int bar = -875;
bar <<= FOO;
Об этом сообщает UBSAN as UB.
Насколько я понимаю, -875 << 7 - это просто -(875<<7) и переполнения нет.
Итак, есть ли здесь реальная проблема?
143 просмотров
schedule
23.12.2022
Как использовать MATRIX_EVAL для включения строки матрицы построения на основе компилятора?
Наша матрица сборки Travis включает строку, которая строится с помощью дезинфицирующего средства Undefined Behavior. :
matrix:
- BUILD_MODE="all"
- BUILD_MODE="no-asm"
- BUILD_MODE="asan"
- BUILD_MODE="ubsan"
GCC требует...
555 просмотров
schedule
26.08.2022
Добавление указателя и целочисленное переполнение с помощью Clang 5.0 и UBsan?
Я пытаюсь понять проблему, которую мы недавно устранили при использовании Clang 5.0 и Undefined Behavior Sanitizer (UBsan). У нас есть код, который обрабатывает буфер в прямом или обратном направлении. Сокращенный регистр похож на код, показанный...
317 просмотров
schedule
21.06.2023
Устранение ошибки дезинфицирующего средства при использовании ускоренной сериализации
Недавно я пытался использовать ускоренную сериализацию для сериализации класса, который содержит std::vector<std::unique_ptr<Base>>> в качестве члена. Согласно документации по ускорению (...
392 просмотров
schedule
28.09.2022
Как исправить эту ошибку времени выполнения C ++ UBSAN vptr (ошибка времени выполнения: вызов члена по адресу)
Я включил тест ubsan (-fsanitize = undefined) в своем проекте и обнаружил несколько ошибок времени выполнения ubsan. Может ли кто-нибудь помочь мне понять, почему здесь не удалось? Как исправить эту проблему в GCC и Clang?
Вот модуль lib.so,...
435 просмотров
schedule
30.10.2022
Управление ведением журнала для Address Sanitizer PLUS Undefined Behavior Sanitizer?
Несколько дезинфицирующих средств (из GCC или Clang) нельзя комбинировать — т. е. использовать одновременно в одной сборке, но Asan и Ubsan можно комбинировать — т. е. я могу собрать с «-fsanitize=address,undefined -fsanitize-recover=all…» и иметь...
486 просмотров
schedule
12.01.2023
Почему включение очистки неопределенного поведения мешает оптимизации?
Рассмотрим следующий код:
#include <string_view>
constexpr std::string_view f() { return "hello"; }
static constexpr std::string_view g() {
auto x = f();
return x.substr(1, 3);
}
int foo() { return g().length(); }...
573 просмотров
schedule
27.03.2023