Reland Fixed compiler warning C4267 'conversion from 'size_t' to 'type', possible loss of data'
Additional warnings found with more testing and added C4267 warning disable only for angle_libpng

BUG=angleproject:1120

Change-Id: Ic403dcff5a8018056fa51a8c408e64207f3362eb
Reviewed-on: https://chromium-review.googlesource.com/293028
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
diff --git a/src/tests/gl_tests/GLSLTest.cpp b/src/tests/gl_tests/GLSLTest.cpp
index 470f20d..78872d1 100644
--- a/src/tests/gl_tests/GLSLTest.cpp
+++ b/src/tests/gl_tests/GLSLTest.cpp
@@ -827,7 +827,7 @@
     const std::string source = "void main() { gl_FragColor = vec4(0, 0, 0, 0); }" + appendGarbage;
     const char *sourceArray[1] = { source.c_str() };
     GLint lengths[1] = { static_cast<GLint>(source.length() - appendGarbage.length()) };
-    glShaderSource(shader, ArraySize(sourceArray), sourceArray, lengths);
+    glShaderSource(shader, static_cast<GLsizei>(ArraySize(sourceArray)), sourceArray, lengths);
     glCompileShader(shader);
 
     GLint compileResult;
@@ -842,7 +842,7 @@
 
     const char *sourceArray[1] = { "void main() { gl_FragColor = vec4(0, 0, 0, 0); }" };
     GLint lengths[1] = { -10 };
-    glShaderSource(shader, ArraySize(sourceArray), sourceArray, lengths);
+    glShaderSource(shader, static_cast<GLsizei>(ArraySize(sourceArray)), sourceArray, lengths);
     glCompileShader(shader);
 
     GLint compileResult;
@@ -871,7 +871,7 @@
     };
     ASSERT_EQ(ArraySize(sourceArray), ArraySize(lengths));
 
-    glShaderSource(shader, ArraySize(sourceArray), sourceArray, lengths);
+    glShaderSource(shader, static_cast<GLsizei>(ArraySize(sourceArray)), sourceArray, lengths);
     glCompileShader(shader);
 
     GLint compileResult;
@@ -902,7 +902,7 @@
     };
     ASSERT_EQ(ArraySize(sourceArray), ArraySize(lengths));
 
-    glShaderSource(shader, ArraySize(sourceArray), sourceArray, lengths);
+    glShaderSource(shader, static_cast<GLsizei>(ArraySize(sourceArray)), sourceArray, lengths);
     glCompileShader(shader);
 
     GLint compileResult;