Switch to /utf-8 for MSVC (#14822)
author刘雨培 <liuyupei951018@hotmail.com>
Thu, 2 Nov 2017 20:06:00 +0000 (04:06 +0800)
committerJan Kotas <jkotas@microsoft.com>
Thu, 2 Nov 2017 20:06:00 +0000 (13:06 -0700)
* Add /source-charset:utf-8 to force MSVC to compile source as UTF-8.

* Fix the illegal character in siginfo.cpp.

compileoptions.cmake
src/vm/siginfo.cpp

index 9f9f28e..6f9d55f 100644 (file)
@@ -94,6 +94,7 @@ if (WIN32)
   add_compile_options(/wd4960 /wd4961 /wd4603 /wd4627 /wd4838 /wd4456 /wd4457 /wd4458 /wd4459 /wd4091 /we4640)
   add_compile_options(/Zi) # enable debugging information
   add_compile_options(/ZH:SHA_256) # use SHA256 for generating hashes of compiler processed source files.
+  add_compile_options(/source-charset:utf-8) # Force MSVC to compile source as UTF-8.
 
   if (CLR_CMAKE_PLATFORM_ARCH_I386)
     add_compile_options(/Gz)
index 40a55cb..be919c8 100644 (file)
@@ -4969,7 +4969,7 @@ void ReportByRefPointersFromByRefLikeObject(promote_func *fn, ScanContext *sc, P
         }
 
         // TODO: GetApproxFieldTypeHandleThrowing may throw. This is a potential stress problem for fragile NGen of non-CoreLib
-        // assemblies. It won\92t ever throw for CoreCLR with R2R. Figure out if anything needs to be done to deal with the
+        // assemblies. It won't ever throw for CoreCLR with R2R. Figure out if anything needs to be done to deal with the
         // exception.
         PTR_MethodTable pFieldMT = pFD->GetApproxFieldTypeHandleThrowing().AsMethodTable();
         if (!pFieldMT->IsByRefLike())