//if (; ==

echo -a fails
//if ( ; ==

echo -a fails
//if (1 == ;1) echo -a fails
//if (; == ; ) echo -a works
//if ( ; == ; ) echo -a works
//if (1 == 1;) echo -a does not give an error, but doesn't echo anything either, which is correct
The

emoticon is supposed to be ; ) without a space.