aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Driver/Tools.cpp
diff options
context:
space:
mode:
authorNico Weber <nicolasweber@gmx.de>2016-08-23 16:47:09 +0000
committerNico Weber <nicolasweber@gmx.de>2016-08-23 16:47:09 +0000
commit97f446c04217045e181d6a88e1ad3a5ca55601a5 (patch)
treeabb49020c50e20b50ed25dbcaecbbc2a96b9d059 /clang/lib/Driver/Tools.cpp
parent5c269d0b7aad7d8171a68b292ffeefcf1dc9c681 (diff)
downloadllvm-97f446c04217045e181d6a88e1ad3a5ca55601a5.zip
llvm-97f446c04217045e181d6a88e1ad3a5ca55601a5.tar.gz
llvm-97f446c04217045e181d6a88e1ad3a5ca55601a5.tar.bz2
clang-cl: Accept MSVC 2015's `/source-charset:utf-8` flag.
clang already treats all inputs as utf-8. Warn if anything but utf-8 is passed. Do this by mapping source-charset to finput-charset, which already behaves like this. Slightly tweak finput-charset to accept "utf-8" case-insensitively. This matches gcc's and cl.exe's behavior, and IANA says that character set names are case-insensitive. https://reviews.llvm.org/D23807 llvm-svn: 279531
Diffstat (limited to 'clang/lib/Driver/Tools.cpp')
-rw-r--r--clang/lib/Driver/Tools.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp
index a814df3..747f3ea 100644
--- a/clang/lib/Driver/Tools.cpp
+++ b/clang/lib/Driver/Tools.cpp
@@ -5801,7 +5801,7 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
// -finput_charset=UTF-8 is default. Reject others
if (Arg *inputCharset = Args.getLastArg(options::OPT_finput_charset_EQ)) {
StringRef value = inputCharset->getValue();
- if (value != "UTF-8")
+ if (value.lower() != "utf-8")
D.Diag(diag::err_drv_invalid_value) << inputCharset->getAsString(Args)
<< value;
}