Enable and fix the -Wshorten-64-to-32
BUG=angleproject:635
Change-Id: If09014508d5f4dfeb17ac946672a76a98b8ad175
Reviewed-on: https://chromium-review.googlesource.com/316580
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Tryjob-Request: Corentin Wallez <cwallez@chromium.org>
Tested-by: Corentin Wallez <cwallez@chromium.org>
diff --git a/src/common/mathutil.h b/src/common/mathutil.h
index 7aff8aa..a329d28 100644
--- a/src/common/mathutil.h
+++ b/src/common/mathutil.h
@@ -493,9 +493,10 @@
return ((a ^ b) >> 1) + (a & b);
}
-inline signed int average(signed int a, signed int b)
+inline int average(int a, int b)
{
- return ((long long)a + (long long)b) / 2;
+ long long average = (static_cast<long long>(a) + static_cast<long long>(b)) / 2ll;
+ return static_cast<int>(average);
}
inline float average(float a, float b)
diff --git a/src/libANGLE/renderer/gl/StateManagerGL.cpp b/src/libANGLE/renderer/gl/StateManagerGL.cpp
index 9976e5b..037f5d5 100644
--- a/src/libANGLE/renderer/gl/StateManagerGL.cpp
+++ b/src/libANGLE/renderer/gl/StateManagerGL.cpp
@@ -1277,7 +1277,7 @@
void StateManagerGL::syncState(const gl::State &state, const gl::State::DirtyBits &dirtyBits)
{
// TODO(jmadill): Investigate only syncing vertex state for active attributes
- for (unsigned int dirtyBit : angle::IterateBitSet(dirtyBits | mLocalDirtyBits))
+ for (auto dirtyBit : angle::IterateBitSet(dirtyBits | mLocalDirtyBits))
{
switch (dirtyBit)
{
diff --git a/src/libANGLE/renderer/gl/VertexArrayGL.cpp b/src/libANGLE/renderer/gl/VertexArrayGL.cpp
index 7085663..255b41f 100644
--- a/src/libANGLE/renderer/gl/VertexArrayGL.cpp
+++ b/src/libANGLE/renderer/gl/VertexArrayGL.cpp
@@ -232,7 +232,7 @@
ASSERT(mAttributesNeedStreaming.any());
const auto &attribs = mData.getVertexAttributes();
- for (unsigned int idx : angle::IterateBitSet(mAttributesNeedStreaming & activeAttributesMask))
+ for (auto idx : angle::IterateBitSet(mAttributesNeedStreaming & activeAttributesMask))
{
const auto &attrib = attribs[idx];
ASSERT(AttributeNeedsStreaming(attrib));
@@ -292,8 +292,7 @@
size_t curBufferOffset = bufferEmptySpace;
const auto &attribs = mData.getVertexAttributes();
- for (unsigned int idx :
- angle::IterateBitSet(mAttributesNeedStreaming & activeAttributesMask))
+ for (auto idx : angle::IterateBitSet(mAttributesNeedStreaming & activeAttributesMask))
{
const auto &attrib = attribs[idx];
ASSERT(AttributeNeedsStreaming(attrib));
@@ -334,13 +333,14 @@
{
ASSERT(!attrib.normalized);
mFunctions->vertexAttribIPointer(
- idx, attrib.size, attrib.type, static_cast<GLsizei>(destStride),
+ static_cast<GLuint>(idx), attrib.size, attrib.type,
+ static_cast<GLsizei>(destStride),
reinterpret_cast<const GLvoid *>(vertexStartOffset));
}
else
{
mFunctions->vertexAttribPointer(
- idx, attrib.size, attrib.type, attrib.normalized,
+ static_cast<GLuint>(idx), attrib.size, attrib.type, attrib.normalized,
static_cast<GLsizei>(destStride),
reinterpret_cast<const GLvoid *>(vertexStartOffset));
}
diff --git a/src/libANGLE/renderer/gl/glx/DisplayGLX.cpp b/src/libANGLE/renderer/gl/glx/DisplayGLX.cpp
index 40c5e9b..b3fa1e2 100644
--- a/src/libANGLE/renderer/gl/glx/DisplayGLX.cpp
+++ b/src/libANGLE/renderer/gl/glx/DisplayGLX.cpp
@@ -690,9 +690,9 @@
}
}
-bool DisplayGLX::isValidWindowVisualId(int visualId) const
+bool DisplayGLX::isValidWindowVisualId(unsigned long visualId) const
{
- return mRequestedVisual == -1 || mRequestedVisual == visualId;
+ return mRequestedVisual == -1 || static_cast<unsigned long>(mRequestedVisual) == visualId;
}
const FunctionsGL *DisplayGLX::getFunctionsGL() const
diff --git a/src/libANGLE/renderer/gl/glx/DisplayGLX.h b/src/libANGLE/renderer/gl/glx/DisplayGLX.h
index 7bce44d..41a985a 100644
--- a/src/libANGLE/renderer/gl/glx/DisplayGLX.h
+++ b/src/libANGLE/renderer/gl/glx/DisplayGLX.h
@@ -79,7 +79,7 @@
// acts as expected.
void setSwapInterval(glx::Drawable drawable, SwapControlData *data);
- bool isValidWindowVisualId(int visualId) const;
+ bool isValidWindowVisualId(unsigned long visualId) const;
private:
const FunctionsGL *getFunctionsGL() const override;
diff --git a/src/libANGLE/renderer/gl/glx/WindowSurfaceGLX.cpp b/src/libANGLE/renderer/gl/glx/WindowSurfaceGLX.cpp
index c5c5cbe..b4c5fd6 100644
--- a/src/libANGLE/renderer/gl/glx/WindowSurfaceGLX.cpp
+++ b/src/libANGLE/renderer/gl/glx/WindowSurfaceGLX.cpp
@@ -57,7 +57,7 @@
{
XWindowAttributes windowAttributes;
XGetWindowAttributes(mDisplay, mParent, &windowAttributes);
- int visualId = windowAttributes.visual->visualid;
+ unsigned long visualId = windowAttributes.visual->visualid;
if (!mGLXDisplay->isValidWindowVisualId(visualId))
{