Я перехожу на C ++ 14 и стремлюсь принять его [[deprecated]]
функциональность, например.
#include <string>
#include <iostream>
[[deprecated]]
int f() { return 42; }
int main()
{
std::cout << f() << std::endl;
}
скомпилировано с
g++ example.cpp -std=c++14 -Werror
и проблема в том, что устаревшее предупреждение преобразуется (понижается?) В ошибку, и сборка завершается неудачно.
Очевидно, что использование #pragma
, чтобы заставить замолчать предупреждение, полностью уничтожает точку. Есть ли способ заставить g ++ выдавать предупреждения, но исключать конкретные из них как ошибки?