Since implicit conversion warnings are not 'on' by default in GCC or Clang, and not part of -Wall, I decided to give it a shot.
It worked out great for my code, and gave me all the same implicit conversion warnings Visual Studio does... and more!
This flag seems more strict and thorough than VS, and pointed out a wad of conversions in JUCE. There are some fishy ones, like passing signed integers (which may be set to -1 by JUCE) to OpenGL functions that support only unsigned integers.
Note that I'm testing using the Demo.
openGLContext.extensions.glVertexAttribPointer (position->attributeID, 3, GL_FLOAT, GL_FALSE, sizeof (Vertex), 0);
Where attributeID is a GLint, and glVertexAttribPointer() takes a GLuint for first parameter. The same applies to glEnableVertexAttribArray(), too...
The JUCE docs say that attributeID will be <0 if the uniform could not be found; this seems like the potential for bizarre run-time issues...