Adding -fshort-wchar option.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86167 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/clang-cc/clang-cc.cpp b/tools/clang-cc/clang-cc.cpp
index 26ba42d..a7e8f51 100644
--- a/tools/clang-cc/clang-cc.cpp
+++ b/tools/clang-cc/clang-cc.cpp
@@ -611,6 +611,10 @@
 CharIsSigned("fsigned-char",
     llvm::cl::desc("Force char to be a signed/unsigned type"));
 
+static llvm::cl::opt<bool>
+ShortWChar("fshort-wchar",
+    llvm::cl::desc("Force wchar_t to be a short unsigned int"));
+
 
 static llvm::cl::opt<bool>
 Trigraphs("trigraphs", llvm::cl::desc("Process trigraph sequences"));
@@ -813,6 +817,8 @@
     Options.Blocks = EnableBlocks;
   if (CharIsSigned.getPosition())
     Options.CharIsSigned = CharIsSigned;
+	if (ShortWChar.getPosition())
+		Options.ShortWChar = ShortWChar;
 
   if (!AllowBuiltins)
     Options.NoBuiltin = 1;
@@ -877,6 +883,8 @@
 
   if (MainFileName.getPosition())
     Options.setMainFileName(MainFileName.c_str());
+
+	Target->setForcedLangOptions(Options);
 }
 
 //===----------------------------------------------------------------------===//