no?
I don't see your example as a proof for that.
argument 1:
$x=0 $x is set to 0 and $x (or an alias) is passed as argument 1
argument 2:
$x=$x+1 $x is set to 0+1 = 1 and $x (or an alias) is passed as argument 2
argument 3:
$x++ $x is incremented and the return value of the post increment (1) is passed as the argument 3
argument 4:
++$x $x is incremented and the return value of the pre increment (3) is passed as argument 4.
$x is now 3.
argument 1 is an alias for $x. 3
argument 2 is an alias for $x. 3
argument 3 is 1.
argument 4 is 3.