On Wed, 2012-08-22 at 18:53 +0300, Maxim Levitsky wrote: > On Wed, 2012-08-22 at 08:48 -0600, Brian Paul wrote: > > On 08/22/2012 02:23 AM, Maxim Levitsky wrote: > > > Unfortunelly some buggy programs use extensions without asking ether for > > > proper GLSL version nor ask for particular extension. > > > > > > Moreover the force_glsl_extensions_warn hack is only effective for some > > > extensions (GL_EXT_texture_array) but unfortunelly isnt effective for > > > other > > > extensions (I suspect these that declare new built in functions) > > > Example of this is recently added ARB_shader_bit_encoding extension. > > > Forcing GLSL version to high value seems to fix this, not sure if this > > > is acceptable hack though. > > > > > > This can be reproducted in Unigine Heaven with "ambient occlusion" on. > > > Note that even with this path shader compilatin fails, because code in > > > Unigine > > > that gets activated when this extension gets enabled expects implicit > > > conversions > > > between signed and unsigned immidiate constants. > > > > Can you give a short example of the GLSL code that's causing the problem? > > > > > > > Whether GLSL shold allow this is open > > > for debate. > > > > > > In my opinion, it's better to bend the rules a bit to allow broken > > apps to run than to just give up so I'm OK with this patch. But let's > > hear what Ian thinks. > > > > -Brian > Sure! > > uniform uint foo; > void main() { > float x = float(foo & 0xffu); > } > > Best regards, > Maxim Levitsky > Oops, that is the "fixed" code.....
This doesn't compile. uniform uint normal; void main() { float x = float(normal & 0xff); } Best regards, Maxim Levitsky _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev