如何对g ++警告c ++ 17功能进行静音?

Bil*_*Yan 3 c++ gcc c++17

我自己构建了gcc 7来尝试一些新的c ++ 17功能.

当我构建代码时,我看到了数百行警告,说某些功能只有在-std = c ++ 1z时才可用(我已经在构建命令行中指定了-std = c ++ 1z并尝试了gnu ++ 1z也)

我想沉默这个警告.当使用clang 4时,有一个选项-Wno-c ++ 1z-extensions

但gcc无法识别此选项.

Bil*_*Yan 6

我有根导致我的问题的原因.

这是因为我用cmake设置了-std = c ++ 17.我也包括了Qt5.Qt5设置覆盖了我的-std = c ++ 17.使用make VERBOSE = 1,我可以看到-std = c ++ 17和-std = c ++ 14.

这会混淆编译器.

该问题与https://gitlab.kitware.com/cmake/cmake/issues/16468有关