Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/gusenov/examples-google-sanitizers

:hospital: Примеры использования Google Sanitizers в CLion.
https://github.com/gusenov/examples-google-sanitizers

clang clion clion-cmake cmake cpp examples google-sanitizer

Last synced: 5 days ago
JSON representation

:hospital: Примеры использования Google Sanitizers в CLion.

Awesome Lists containing this project

README

        

# Флаги компилятора в *CMakeLists.txt*

```
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=[sanitizer_name] [additional_options] [-g] [-OX]")
```

Для C-проектов используется ```CMAKE_C_FLAGS``` вместо ```CMAKE_CXX_FLAGS```.
Для ```[sanitizer_name]``` используется один из следующих вариантов:

- address для AddressSanitizer
- leak для LeakSanitizer
- thread для ThreadSanitizer
- undefined для UndefinedBehaviorSanitizer (есть еще другие опции)
- memory для MemorySanitizer

```[Additional_flags]``` - это другие флаги компиляции, например:

- ```-fno-omit-frame-pointer```,
- ```fsanitize-recover/fno-sanitize-recover```,
- ```-fsanitize-blacklist```,
- и пр.

```[-g]``` используется чтобы в предупреждающих сообщениях были имена файлов и
номера строк.

Уровень оптимизации ```[-OX]``` задается для получения производительности.