Поделиться через


/fsanitize (Включить санитизаторы)

/fsanitize Используйте параметры компилятора, чтобы включить санитизаторы.

Синтаксис

/fsanitize=address
/fsanitize=fuzzer
/fsanitize-address-use-after-return
/fno-sanitize-address-vcasan-lib

Замечания

Параметр /fsanitize=address компилятора позволяет AddressSanitizer, мощной технологии компилятора и среды выполнения выявить ошибки, которые трудно найти. /fsanitize=address Поддержка этого параметра доступна начиная с Visual Studio 2019 версии 16.9.

Параметр /fsanitize=fuzzer компилятора включает экспериментальную поддержку LibFuzzer. LibFuzzer — это библиотека нечеткого отображения покрытия, которую можно использовать для поиска ошибок и сбоев, вызванных введенными пользователем входными данными. Мы рекомендуем использовать /fsanitize=address с LibFuzzer. Этот параметр полезен для нечетких инструментов, таких как OneFuzz. Дополнительные сведения см. в документации oneFuzz и проекте OneFuzz GitHub. /fsanitize=fuzzer Поддержка этого параметра доступна начиная с Visual Studio 2022 версии 17.0.

Параметр /fsanitize не разрешает синтаксис, разделенный запятыми, например: /fsanitize=address,fuzzer Эти параметры необходимо указать по отдельности.

Параметры /fsanitize-address-use-after-return и /fno-sanitize-address-vcasan-lib компилятора, а также/INFERASANLIBS варианты (использование параметров санитизатора и компоновщика) /INFERASANLIBS:NO предлагают поддержку для расширенных пользователей. Дополнительные сведения см. в справочнике по сборке и языку AddressSanitizer.

Установка параметра компилятора /fsanitize=address в среде разработки Visual Studio

  1. Откройте диалоговое окно страниц свойств проекта.

  2. Перейдите на страницу свойств Свойства конфигурации>C/C++>Общие.

  3. Измените свойство Enable Address Sanitizer . Чтобы включить его, нажмите кнопку "Да" (/fsanitize=address).

  4. Нажмите кнопку "ОК" или "Применить", чтобы сохранить изменения.

Установка параметра компилятора /fsanitize=fuzzer в среде разработки Visual Studio

  1. Откройте диалоговое окно страниц свойств проекта.

  2. Перейдите на страницу свойств Свойства конфигурации>C/C++>Общие.

  3. Измените свойство Enable Fuzzer . Чтобы включить его, нажмите кнопку "Да" (/fsanitize=fuzzer).

  4. Нажмите кнопку "ОК" или "Применить", чтобы сохранить изменения.

Настройка дополнительных параметров компилятора

  1. Откройте диалоговое окно страниц свойств проекта.

  2. Перейдите на страницу свойств Свойства конфигурации>C/C++>Командная строка.

  3. Измените свойство "Дополнительные параметры", чтобы задать /fsanitize-address-use-after-return или /fno-sanitize-address-vcasan-lib.

  4. Нажмите кнопку "ОК" или "Применить", чтобы сохранить изменения.

Установка данного параметра компилятора программным способом

См. также

Параметры компилятора MSVC
Синтаксис командной строки компилятора MSVC
/INFERASANLIBS (Используйте выводимые libs санитизаторы)
/fsanitize-coverage (настройка покрытия санитайзеров)
Обзор AddressSanitizer
Известные проблемы AddressSanitizer
Справочник по сборке и языку AddressSanitizer