gotcha

n. A misfeature of a system, especially a programming language or
environment, that tends to breed bugs or mistakes because it is both
enticingly easy to invoke and completely unexpected and/or unreasonable in
its outcome. For example, a classic gotcha in C is the fact that if (a=b)
{code; } is syntactically valid and sometimes even correct. It puts the
value of b into a and then executes code if a is non-zero. What the
programmer probably meant was if (a==b) {code; }, which executes code if a
and b are equal.

