Clangd не находит атрибут assume
Использую в качестве IDE neovim, в нем настроен в качестве LSP clangd.
Для сборки проекта использую meson, в котором явно установлен стандарт c++26:
project('test_gccjit', 'cpp',
default_options: 'cpp_std=c++26'
)
В compile_commands также присутствует флаг "-std=c++26" и находит функции, доступные в c++26.
#include <print>
[[nodiscard]] //ОК, без предупреждений
int main(int argc, char **argv){
[[assume(argc > 0)]]; //clang: Unknown attribute 'assume' ignored
std::print("Hello world!\n"); //Все ОК, находит
return 0;
}
clangd --version
возвращает "18.1.8"
Согласно сайту cppreference, assume должен быть реализован.
Так и должно быть, или надо специфически как-то настраивать clangd? Добавят ли в clangd поддержку всех атрибутов?