Surasak,
In response to your post:
return(y=z);
The above code is legal if y and z are boolean variables.
y & z do not have to be booleans. This is an assignment operation. This will work as long as z is assignable to y. However (I'll repeat again), even though this works it is sloppy coding.
-Ed