При компиляции проекта CharLS c ++ я получаю следующее (раздражающее) предупреждение:
losslesstraits.h:44:21: warning: unknown attribute 'no_sanitize' ignored [-Wattributes]
__attribute__((no_sanitize("shift")))
^
Ссылка:
В главной роли в документации к Clang, кажется, она доступна с LLVM 3.3:
Однако в моей системе я использую:
$ clang++ --version
clang version 3.4.2 (tags/RELEASE_34/dot2-final)
Target: x86_64-redhat-linux-gnu
Thread model: posix
Какие #ifdef
я должен использовать, чтобы скрыть это предупреждение?
Обновление: очевидно, я мог бы использовать некоторую случайную основную версию:
#if defined(__clang__) && (__clang_major__ > 7)
Но то, что меня интересует, это правильная (минимальная) версия для проверки.
Задача ещё не решена.
Других решений пока нет …