[C programmers] Coding error in an expression due to unexpected
grouping of arithmetic or logical operators by the compiler. Used
esp. of certain common coding errors in C due to the nonintuitively
low precedence levels of &, |, ^, <<, and >> (for this reason,
experienced C programmers deliberately forget the language's
{baroque} precedence hierarchy and parenthesize defensively). Can
always be avoided by suitable use of parentheses. {LISP} fans enjoy
pointing out that this can't happen in their favorite language, which
eschews precedence entirely, requiring one to use explicit
parentheses everywhere. See {aliasing bug}, {memory leak}, {memory
smash}, {smash the stack}, {fandango on core}, {overrun screw}.
[glossary]
[Reference(s) to this entry by made by: {aliasing bug}{fandango on core}{memory leak}{overrun screw}{smash the stack}]