Great, you fixed his code
. But sad, you didnt answer his question
.
The answer is, each line except last (there only the second warning) should cause two warnings, one because of assignment in a conditional and one because of precedence of the || operator.
Because of the precedence the || operator gets evaluated first, the chars are interpreted in a boolean context, in every if the result is 1 and gets assigned to answer (except last if), so the result is always Yes