I have a Nexus 10 with Android 5.0 and I'm getting this "error" when compiling the attached shaders :
12-09 04:33:35.369: I/com.re3.benchmark(5159): L0001 The fragment shader uniform structure Light0 does not match the vertex shader uniform structure Light0.
12-09 04:33:35.369: I/com.re3.benchmark(5159): The precision does not match.
I'm basically declaring a structure in the VS that I'm not using, and I think the compiler optimizes the components out, compares with the one that's used in the FS and then realizes they don't match, but instead it says the precision doesn't match. As you can see my FS is highp and putting highp manually in the VS doesn't change the error returned. I've also encountered a second error with a shader that declares just a uniform in the VS but is only used in the FS.
This shouldn't be an error obviously, and an ETA on a fix would be nice.
Thanks for the insight, so the int was it ? It would be nice for the error to say that the "int precision mismatched", most of the time I use floats so I intuitively thought it's about floats and thought it was an error. I force highp because I want to have a somewhat parity at the shader level between the mobile version of my app and the desktop version where everything is 32bit precision by default. My Terrain Shader though after multiplying 6 textures gets very pixelated under mediump.
It would be nice for the error to say that the "int precision mismatched"
Yep, I agree - I'll raise a request with our compiler team
Regards
Pete