https://bugs.winehq.org/show_bug.cgi?id=45468
--- Comment #4 from Henri Verbeet hverbeet@gmail.com --- Possibly, although I don't immediately see a reason to think it would be incorrect to discard the fragment in that case.
Since you seem to have done some debugging on this already, does it help if you simply don't generate the alpha-test code? (That's in shader_glsl_generate_alpha_test().) What is the value of WINED3D_RS_ALPHAREF set by the application? The value of alpha_test_ref would suggest "3".
Does it also help to set MaxVersionGL without disabling GLSL? When not using core contexts, we use the fixed function alpha test, instead of doing it in the shader.