Yes, dude! I totally agree with you, and i can confirm, that:
1) all drivers later than 11.3 can't to compile long shaders with different functions, and fails with AMD favorite mistake - "unexpected error"
2) yes, in most cases expressions like:
float a = some_array[int(anything_float)];
leads to crash in driver, in function DrvBufferPresent()
3) usage of GLSL interfaces with special interpolation qualifiers leads to total ignoration of this qualifiers, example:
out s_gtof_OmniOuter
{
flat float4 vViewPos3_fSqRange; // this flat will not work!
flat float4 vColor3_fInvRange;
float3 vRay3;
float3 vProjUv3;
}
v_OmniOuter;
4) glClearBuffer behavior is not corresponding OpenGL 3.3/4.1 specification
P.S. I HATE AMD! I'm a graphics programmer, and i can't to do my job, because with every new driver i first of all do a lot of test... and what i see, nvidia - all works fine, amd/ati - crash or undefined behavior
IM SO ANGRY!
AMD WINDOWS DRIVER TEAM - THE WORST DRIVER TEAM EVER!