/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
Откройте диалоговое окно страниц свойств проекта.
Перейдите на страницу свойств Свойства конфигурации>C/C++>Общие.
Измените свойство Enable Address Sanitizer . Чтобы включить его, нажмите кнопку "Да" (/fsanitize=address).
Нажмите кнопку "ОК" или "Применить", чтобы сохранить изменения.
Установка параметра компилятора /fsanitize=fuzzer
в среде разработки Visual Studio
Откройте диалоговое окно страниц свойств проекта.
Перейдите на страницу свойств Свойства конфигурации>C/C++>Общие.
Измените свойство Enable Fuzzer . Чтобы включить его, нажмите кнопку "Да" (/fsanitize=fuzzer).
Нажмите кнопку "ОК" или "Применить", чтобы сохранить изменения.
Настройка дополнительных параметров компилятора
Откройте диалоговое окно страниц свойств проекта.
Перейдите на страницу свойств Свойства конфигурации>C/C++>Командная строка.
Измените свойство "Дополнительные параметры", чтобы задать /fsanitize-address-use-after-return или /fno-sanitize-address-vcasan-lib.
Нажмите кнопку "ОК" или "Применить", чтобы сохранить изменения.
Установка данного параметра компилятора программным способом
- См. раздел AdditionalOptions.
См. также
Параметры компилятора MSVC
Синтаксис командной строки компилятора MSVC
/INFERASANLIBS
(Используйте выводимые libs санитизаторы)
/fsanitize-coverage
(настройка покрытия санитайзеров)
Обзор AddressSanitizer
Известные проблемы AddressSanitizer
Справочник по сборке и языку AddressSanitizer