diff options
author | Nico Weber <nicolasweber@gmx.de> | 2016-08-23 16:47:09 +0000 |
---|---|---|
committer | Nico Weber <nicolasweber@gmx.de> | 2016-08-23 16:47:09 +0000 |
commit | 97f446c04217045e181d6a88e1ad3a5ca55601a5 (patch) | |
tree | abb49020c50e20b50ed25dbcaecbbc2a96b9d059 /clang/lib/Driver/Tools.cpp | |
parent | 5c269d0b7aad7d8171a68b292ffeefcf1dc9c681 (diff) | |
download | llvm-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.cpp | 2 |
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; } |