Hi,
I would like to know how the following expression evaluates in GLSL:

float a=0.0;
a = (a = 1.0) + (a = 2.0);

Does it evaluate to 3 or 4? and why?

Thanks