Fix pedantic narrowing conversion error.

Clang treats conversion of an unsigned constant to a signed one that
doesn't fit its range as an error. Make Visual Studio also produce an
error.

Change-Id: I2d392d5ba7765b72aa9e9478c5eee02102bdf286
Reviewed-on: https://swiftshader-review.googlesource.com/19648
Tested-by: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>
diff --git a/src/OpenGL/compiler/Compiler.vcxproj b/src/OpenGL/compiler/Compiler.vcxproj
index 1360d93..9036043 100644
--- a/src/OpenGL/compiler/Compiler.vcxproj
+++ b/src/OpenGL/compiler/Compiler.vcxproj
@@ -127,7 +127,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>5030;4005;</DisableSpecificWarnings>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

       <ErrorReporting>Queue</ErrorReporting>

     </ClCompile>

   </ItemDefinitionGroup>

@@ -146,7 +146,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>5030;4005;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

       <ErrorReporting>Queue</ErrorReporting>

     </ClCompile>

   </ItemDefinitionGroup>

@@ -164,7 +164,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>5030;4005;</DisableSpecificWarnings>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

       <ErrorReporting>Queue</ErrorReporting>

     </ClCompile>

   </ItemDefinitionGroup>

@@ -182,7 +182,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>5030;4005;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

       <ErrorReporting>Queue</ErrorReporting>

     </ClCompile>

   </ItemDefinitionGroup>

@@ -200,7 +200,7 @@
       <OmitFramePointers>false</OmitFramePointers>

       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>5030;4005;</DisableSpecificWarnings>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

       <ErrorReporting>Queue</ErrorReporting>

     </ClCompile>

   </ItemDefinitionGroup>

@@ -218,7 +218,7 @@
       <OmitFramePointers>false</OmitFramePointers>

       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>5030;4005;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

       <ErrorReporting>Queue</ErrorReporting>

     </ClCompile>

   </ItemDefinitionGroup>

diff --git a/src/OpenGL/compiler/preprocessor/preprocessor.vcxproj b/src/OpenGL/compiler/preprocessor/preprocessor.vcxproj
index 0060904..0a7f488 100644
--- a/src/OpenGL/compiler/preprocessor/preprocessor.vcxproj
+++ b/src/OpenGL/compiler/preprocessor/preprocessor.vcxproj
@@ -90,7 +90,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>4005;</DisableSpecificWarnings>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <GenerateDebugInformation>true</GenerateDebugInformation>

@@ -104,7 +104,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>4005;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <GenerateDebugInformation>true</GenerateDebugInformation>

@@ -120,7 +120,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>4005;</DisableSpecificWarnings>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <GenerateDebugInformation>true</GenerateDebugInformation>

@@ -138,7 +138,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>4005;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <GenerateDebugInformation>true</GenerateDebugInformation>

diff --git a/src/OpenGL/libEGL/libEGL.vcxproj b/src/OpenGL/libEGL/libEGL.vcxproj
index 172d6b8..7e3c6fc 100644
--- a/src/OpenGL/libEGL/libEGL.vcxproj
+++ b/src/OpenGL/libEGL/libEGL.vcxproj
@@ -132,7 +132,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

       <DisableSpecificWarnings>5030</DisableSpecificWarnings>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>

@@ -164,7 +164,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

       <DisableSpecificWarnings>5030</DisableSpecificWarnings>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>

@@ -197,7 +197,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

       <DisableSpecificWarnings>5030</DisableSpecificWarnings>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>

@@ -230,7 +230,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

       <DisableSpecificWarnings>5030</DisableSpecificWarnings>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>

@@ -265,7 +265,7 @@
       <OmitFramePointers>false</OmitFramePointers>

       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>5030</DisableSpecificWarnings>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>

@@ -298,7 +298,7 @@
       <OmitFramePointers>false</OmitFramePointers>

       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>5030</DisableSpecificWarnings>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>

diff --git a/src/OpenGL/libGL/libGL.vcxproj b/src/OpenGL/libGL/libGL.vcxproj
index ea8f5b5..676f0b5 100644
--- a/src/OpenGL/libGL/libGL.vcxproj
+++ b/src/OpenGL/libGL/libGL.vcxproj
@@ -154,7 +154,7 @@
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>

       <BrowseInformation>true</BrowseInformation>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

@@ -181,7 +181,7 @@
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>

       <BrowseInformation>true</BrowseInformation>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

@@ -215,7 +215,7 @@
       <WholeProgramOptimization>true</WholeProgramOptimization>

       <IntrinsicFunctions>false</IntrinsicFunctions>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

@@ -250,7 +250,7 @@
       <WholeProgramOptimization>true</WholeProgramOptimization>

       <IntrinsicFunctions>false</IntrinsicFunctions>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

@@ -285,7 +285,7 @@
       <EnableFiberSafeOptimizations>true</EnableFiberSafeOptimizations>

       <WholeProgramOptimization>true</WholeProgramOptimization>

       <IntrinsicFunctions>false</IntrinsicFunctions>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

@@ -318,7 +318,7 @@
       <EnableFiberSafeOptimizations>true</EnableFiberSafeOptimizations>

       <WholeProgramOptimization>true</WholeProgramOptimization>

       <IntrinsicFunctions>false</IntrinsicFunctions>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

diff --git a/src/OpenGL/libGLES_CM/libGLES_CM.vcxproj b/src/OpenGL/libGLES_CM/libGLES_CM.vcxproj
index 253e024..d146d12 100644
--- a/src/OpenGL/libGLES_CM/libGLES_CM.vcxproj
+++ b/src/OpenGL/libGLES_CM/libGLES_CM.vcxproj
@@ -136,7 +136,7 @@
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>

       <BrowseInformation>true</BrowseInformation>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

@@ -165,7 +165,7 @@
       <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>

       <BrowseInformation>true</BrowseInformation>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

@@ -201,7 +201,7 @@
       <WholeProgramOptimization>true</WholeProgramOptimization>

       <IntrinsicFunctions>false</IntrinsicFunctions>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

@@ -238,7 +238,7 @@
       <WholeProgramOptimization>true</WholeProgramOptimization>

       <IntrinsicFunctions>false</IntrinsicFunctions>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

@@ -275,7 +275,7 @@
       <EnableFiberSafeOptimizations>true</EnableFiberSafeOptimizations>

       <WholeProgramOptimization>true</WholeProgramOptimization>

       <IntrinsicFunctions>false</IntrinsicFunctions>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

@@ -310,7 +310,7 @@
       <EnableFiberSafeOptimizations>true</EnableFiberSafeOptimizations>

       <WholeProgramOptimization>true</WholeProgramOptimization>

       <IntrinsicFunctions>false</IntrinsicFunctions>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

diff --git a/src/OpenGL/libGLESv2/libGLESv2.vcxproj b/src/OpenGL/libGLESv2/libGLESv2.vcxproj
index e932abc..80766fd 100644
--- a/src/OpenGL/libGLESv2/libGLESv2.vcxproj
+++ b/src/OpenGL/libGLESv2/libGLESv2.vcxproj
@@ -138,7 +138,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>5030;%(DisableSpecificWarnings)</DisableSpecificWarnings>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

@@ -169,7 +169,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>5030;%(DisableSpecificWarnings)</DisableSpecificWarnings>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

@@ -207,7 +207,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>5030;%(DisableSpecificWarnings)</DisableSpecificWarnings>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

@@ -246,7 +246,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>5030;%(DisableSpecificWarnings)</DisableSpecificWarnings>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

@@ -285,7 +285,7 @@
       <IntrinsicFunctions>false</IntrinsicFunctions>

       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>5030;%(DisableSpecificWarnings)</DisableSpecificWarnings>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

@@ -322,7 +322,7 @@
       <IntrinsicFunctions>false</IntrinsicFunctions>

       <TreatWarningAsError>true</TreatWarningAsError>

       <DisableSpecificWarnings>5030;%(DisableSpecificWarnings)</DisableSpecificWarnings>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <AdditionalDependencies>dxguid.lib;WS2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>

diff --git a/src/Reactor/Reactor.vcxproj b/src/Reactor/Reactor.vcxproj
index 6bd1813..788de64 100644
--- a/src/Reactor/Reactor.vcxproj
+++ b/src/Reactor/Reactor.vcxproj
@@ -123,7 +123,7 @@
       <TreatWarningAsError>true</TreatWarningAsError>

       <ExceptionHandling>false</ExceptionHandling>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <ProjectReference>

       <LinkLibraryDependencies>false</LinkLibraryDependencies>

@@ -149,7 +149,7 @@
       <OmitFramePointers>false</OmitFramePointers>

       <TreatWarningAsError>true</TreatWarningAsError>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <ProjectReference>

       <LinkLibraryDependencies>false</LinkLibraryDependencies>

@@ -179,7 +179,7 @@
       <FloatingPointExceptions>false</FloatingPointExceptions>

       <TreatWarningAsError>true</TreatWarningAsError>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <ProjectReference>

       <LinkLibraryDependencies>false</LinkLibraryDependencies>

@@ -207,7 +207,7 @@
       <StringPooling>true</StringPooling>

       <FloatingPointExceptions>false</FloatingPointExceptions>

       <TreatWarningAsError>true</TreatWarningAsError>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <ProjectReference>

       <LinkLibraryDependencies>false</LinkLibraryDependencies>

@@ -239,7 +239,7 @@
       <FloatingPointExceptions>false</FloatingPointExceptions>

       <TreatWarningAsError>true</TreatWarningAsError>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <ProjectReference>

       <LinkLibraryDependencies>false</LinkLibraryDependencies>

@@ -270,7 +270,7 @@
       <StringPooling>true</StringPooling>

       <FloatingPointExceptions>false</FloatingPointExceptions>

       <TreatWarningAsError>true</TreatWarningAsError>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <ProjectReference>

       <LinkLibraryDependencies>false</LinkLibraryDependencies>

diff --git a/src/Reactor/Subzero.vcxproj b/src/Reactor/Subzero.vcxproj
index 1662e0f..688e8399 100644
--- a/src/Reactor/Subzero.vcxproj
+++ b/src/Reactor/Subzero.vcxproj
@@ -91,7 +91,7 @@
       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <ForcedIncludeFiles>src/IceTypes.h</ForcedIncludeFiles>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <SubSystem>Console</SubSystem>

@@ -110,7 +110,7 @@
       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <ForcedIncludeFiles>src/IceTypes.h</ForcedIncludeFiles>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <SubSystem>Console</SubSystem>

@@ -131,7 +131,7 @@
       <ForcedIncludeFiles>src/IceTypes.h</ForcedIncludeFiles>

       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <SubSystem>Console</SubSystem>

@@ -158,7 +158,7 @@
       <ForcedIncludeFiles>src/IceTypes.h</ForcedIncludeFiles>

       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <SubSystem>Console</SubSystem>

diff --git a/src/Reactor/SubzeroLLVMDependencies.vcxproj b/src/Reactor/SubzeroLLVMDependencies.vcxproj
index 87502e9..08167be 100644
--- a/src/Reactor/SubzeroLLVMDependencies.vcxproj
+++ b/src/Reactor/SubzeroLLVMDependencies.vcxproj
@@ -78,7 +78,7 @@
       <AdditionalIncludeDirectories>$(SolutionDir)third_party\llvm-subzero\include;$(SolutionDir)third_party\llvm-subzero\build\Windows\include</AdditionalIncludeDirectories>

       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

   </ItemDefinitionGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">

@@ -90,7 +90,7 @@
       <AdditionalIncludeDirectories>$(SolutionDir)third_party\llvm-subzero\include;$(SolutionDir)third_party\llvm-subzero\build\Windows\include</AdditionalIncludeDirectories>

       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

   </ItemDefinitionGroup>

   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">

@@ -104,7 +104,7 @@
       <AdditionalIncludeDirectories>$(SolutionDir)third_party\llvm-subzero\include;$(SolutionDir)third_party\llvm-subzero\build\Windows\include</AdditionalIncludeDirectories>

       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <EnableCOMDATFolding>true</EnableCOMDATFolding>

@@ -122,7 +122,7 @@
       <AdditionalIncludeDirectories>$(SolutionDir)third_party\llvm-subzero\include;$(SolutionDir)third_party\llvm-subzero\build\Windows\include</AdditionalIncludeDirectories>

       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <EnableCOMDATFolding>true</EnableCOMDATFolding>

diff --git a/src/Reactor/SubzeroTest.vcxproj b/src/Reactor/SubzeroTest.vcxproj
index febe352..3379dc4 100644
--- a/src/Reactor/SubzeroTest.vcxproj
+++ b/src/Reactor/SubzeroTest.vcxproj
@@ -95,7 +95,7 @@
       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <AdditionalIncludeDirectories>$(SolutionDir)third_party\googletest\googletest\include\;$(SolutionDir)third_party\googletest\googletest\;$(SolutionDir)third_party\subzero\src\;$(SolutionDir)third_party\subzero\unittest\;$(SolutionDir)third_party\llvm-subzero\include\;$(SolutionDir)third_party\llvm-subzero\build\Windows\include;SubmoduleCheck;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <ForcedIncludeFiles>gtest/gtest.h</ForcedIncludeFiles>

-      <TreatSpecificWarningsAsErrors>5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <SubSystem>Console</SubSystem>

@@ -112,7 +112,7 @@
       <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>

       <AdditionalIncludeDirectories>$(SolutionDir)third_party\googletest\googletest\include\;$(SolutionDir)third_party\googletest\googletest\;$(SolutionDir)third_party\subzero\src\;$(SolutionDir)third_party\subzero\unittest\;$(SolutionDir)third_party\llvm-subzero\include\;$(SolutionDir)third_party\llvm-subzero\build\Windows\include;SubmoduleCheck;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <ForcedIncludeFiles>gtest/gtest.h</ForcedIncludeFiles>

-      <TreatSpecificWarningsAsErrors>5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <SubSystem>Console</SubSystem>

@@ -131,7 +131,7 @@
       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <AdditionalIncludeDirectories>$(SolutionDir)third_party\googletest\googletest\include\;$(SolutionDir)third_party\googletest\googletest\;$(SolutionDir)third_party\subzero\src\;$(SolutionDir)third_party\subzero\unittest\;$(SolutionDir)third_party\llvm-subzero\include\;$(SolutionDir)third_party\llvm-subzero\build\Windows\include;SubmoduleCheck;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <ForcedIncludeFiles>gtest/gtest.h</ForcedIncludeFiles>

-      <TreatSpecificWarningsAsErrors>5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <SubSystem>Console</SubSystem>

@@ -152,7 +152,7 @@
       <RuntimeLibrary>MultiThreaded</RuntimeLibrary>

       <AdditionalIncludeDirectories>$(SolutionDir)third_party\googletest\googletest\include\;$(SolutionDir)third_party\googletest\googletest\;$(SolutionDir)third_party\subzero\src\;$(SolutionDir)third_party\subzero\unittest\;$(SolutionDir)third_party\llvm-subzero\include\;$(SolutionDir)third_party\llvm-subzero\build\Windows\include;SubmoduleCheck;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <ForcedIncludeFiles>gtest/gtest.h</ForcedIncludeFiles>

-      <TreatSpecificWarningsAsErrors>5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <SubSystem>Console</SubSystem>

diff --git a/src/SwiftShader/SwiftShader.vcxproj b/src/SwiftShader/SwiftShader.vcxproj
index ee9521e..7097609 100644
--- a/src/SwiftShader/SwiftShader.vcxproj
+++ b/src/SwiftShader/SwiftShader.vcxproj
@@ -135,7 +135,7 @@
       <RuntimeTypeInfo>false</RuntimeTypeInfo>

       <TreatWarningAsError>true</TreatWarningAsError>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Lib>

       <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>

@@ -171,7 +171,7 @@
       <RuntimeTypeInfo>false</RuntimeTypeInfo>

       <TreatWarningAsError>true</TreatWarningAsError>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Lib>

       <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>

@@ -207,7 +207,7 @@
       <RuntimeTypeInfo>false</RuntimeTypeInfo>

       <TreatWarningAsError>true</TreatWarningAsError>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Lib>

       <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>

@@ -241,7 +241,7 @@
       <FloatingPointExceptions>false</FloatingPointExceptions>

       <RuntimeTypeInfo>false</RuntimeTypeInfo>

       <TreatWarningAsError>true</TreatWarningAsError>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Lib>

       <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>

@@ -280,7 +280,7 @@
       <RuntimeTypeInfo>false</RuntimeTypeInfo>

       <TreatWarningAsError>true</TreatWarningAsError>

       <MultiProcessorCompilation>true</MultiProcessorCompilation>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Lib>

       <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>

@@ -317,7 +317,7 @@
       <FloatingPointExceptions>false</FloatingPointExceptions>

       <RuntimeTypeInfo>false</RuntimeTypeInfo>

       <TreatWarningAsError>true</TreatWarningAsError>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Lib>

       <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>

diff --git a/tests/unittests/unittests.cpp b/tests/unittests/unittests.cpp
index 371fce3..80bc887 100644
--- a/tests/unittests/unittests.cpp
+++ b/tests/unittests/unittests.cpp
@@ -609,14 +609,14 @@
 	glClear(GL_COLOR_BUFFER_BIT);
 	EXPECT_GLENUM_EQ(GL_NONE, glGetError());
 
-	int16_t pixel[3] = { 0x1234, 0x3F80, 0xAAAA };
+	uint16_t pixel[3] = { 0x1234, 0x3F80, 0xAAAA };
 	GLint x = 6;
 	GLint y = 3;
 	glTexSubImage2D(GL_TEXTURE_2D, 0, x, y, 1, 1, GL_RGB, GL_HALF_FLOAT, pixel);
 
 	// This relies on GL_HALF_FLOAT being a valid type for read-back,
 	// which isn't guaranteed by the spec but is supported by SwiftShader.
-	int16_t read_color[3] = { 0, 0, 0 };
+	uint16_t read_color[3] = { 0, 0, 0 };
 	glReadPixels(x, y, 1, 1, GL_RGB, GL_HALF_FLOAT, &read_color);
 	EXPECT_GLENUM_EQ(GL_NONE, glGetError());
 	EXPECT_EQ(read_color[0], pixel[0]);
diff --git a/tests/unittests/unittests.vcxproj b/tests/unittests/unittests.vcxproj
index b92398f..033f5b8 100644
--- a/tests/unittests/unittests.vcxproj
+++ b/tests/unittests/unittests.vcxproj
@@ -96,7 +96,7 @@
       <AdditionalIncludeDirectories>$(SolutionDir)include\;$(SolutionDir)third_party\googletest\googletest\include\;$(SolutionDir)third_party\googletest\googletest\;$(SolutionDir)third_party\googletest\googlemock\include\;SubmoduleCheck;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <ForcedIncludeFiles>

       </ForcedIncludeFiles>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <SubSystem>Console</SubSystem>

@@ -114,7 +114,7 @@
       <AdditionalIncludeDirectories>$(SolutionDir)include\;$(SolutionDir)third_party\googletest\googletest\include\;$(SolutionDir)third_party\googletest\googletest\;$(SolutionDir)third_party\googletest\googlemock\include\;SubmoduleCheck;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <ForcedIncludeFiles>

       </ForcedIncludeFiles>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <SubSystem>Console</SubSystem>

@@ -134,7 +134,7 @@
       <AdditionalIncludeDirectories>$(SolutionDir)include\;$(SolutionDir)third_party\googletest\googletest\include\;$(SolutionDir)third_party\googletest\googletest\;$(SolutionDir)third_party\googletest\googlemock\include\;SubmoduleCheck;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <ForcedIncludeFiles>

       </ForcedIncludeFiles>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <SubSystem>Console</SubSystem>

@@ -156,7 +156,7 @@
       <AdditionalIncludeDirectories>$(SolutionDir)include\;$(SolutionDir)third_party\googletest\googletest\include\;$(SolutionDir)third_party\googletest\googletest\;$(SolutionDir)third_party\googletest\googlemock\include\;SubmoduleCheck;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>

       <ForcedIncludeFiles>

       </ForcedIncludeFiles>

-      <TreatSpecificWarningsAsErrors>4018;5038</TreatSpecificWarningsAsErrors>

+      <TreatSpecificWarningsAsErrors>4018;5038;4838</TreatSpecificWarningsAsErrors>

     </ClCompile>

     <Link>

       <SubSystem>Console</SubSystem>