Tweak implementation of -Wwrite-strings to better match the behavior of current GCCs:
authorRichard Smith <richard-llvm@metafoo.co.uk>
Wed, 4 Sep 2013 22:50:31 +0000 (22:50 +0000)
committerRichard Smith <richard-llvm@metafoo.co.uk>
Wed, 4 Sep 2013 22:50:31 +0000 (22:50 +0000)
commit282b4492dbd9123ad4360853c1b3b4e0d26a302a
tree5e5b58d663fd884c851bcfafa3dffafc45f0f5d4
parent1a26927e3f8e5506815c648070cb1fa42d5b7d57
Tweak implementation of -Wwrite-strings to better match the behavior of current GCCs:

 * In C, as before, if the "warning flag" is enabled, warnings are produced by
   forcing string literals to have const-qualified types (the produced warnings
   are *not* -Wwrite-strings warnings). However, more recent GCCs (at least 4.4
   onwards) now take -w into account here, so we now do the same.

 * In C++, this flag is entirely sane: it behaves just like any other warning
   flag. Stop triggering -fconst-strings here. This is a bit cleaner, but there's
   no real functionality change except in the case where -Xclang -fno-const-strings
   is also specified.

llvm-svn: 190006
clang/lib/Driver/Tools.cpp
clang/test/Driver/clang_f_opts.c