OSDN Git Service

[gtest] Detect warning flags using the positive spelling.
authorChandler Carruth <chandlerc@gmail.com>
Fri, 6 Jan 2017 23:16:00 +0000 (23:16 +0000)
committerChandler Carruth <chandlerc@gmail.com>
Fri, 6 Jan 2017 23:16:00 +0000 (23:16 +0000)
commit2ff6bc0d1d9426af3e54f84c03fdee986181a906
treef85da29468f1c9fa741fec09ba5d8561d99b235d
parent85430657b9bd30aba2519c9837425594b80e74ce
[gtest] Detect warning flags using the positive spelling.

Some GCC versions will accept any warning flag name after a '-Wno-',
which would cause us to try to disable warnings with names GCC didn't
understand. This will silently succeed unless there is some other output
from GCC in which case we get weird cc1plus warnings about the warning
name being bogus.

There is still the issue that gtest sets warning flags for building
gtest-all.cc using weird 'add_definitions' and the fact that there is
a GCC version which warns on the variadic macro usage in gtest under
-pedantic, but has no flag analogous to Clang's
-Wgnu-zero-variadic-macro-argumnets to suppress this warning. I haven't
been able to come up with any good solution here. The closest is to turn
off -pedantic for those versions of GCC, but that seems really nasty.
For now, those versinos of GCC aren't warning clean. If anyone is broken
by this, I'll work on CMake logic to detect and disable -pedantic in
these cases.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@291299 91177308-0d34-0410-b5e6-96231b3b80d8
cmake/config-ix.cmake
cmake/modules/AddLLVM.cmake
utils/unittest/CMakeLists.txt