<jargon> In C programming, to corrupt the execution stack by writing past the end of a local array or other data structure. Code that smashes the stack can cause a return from the routine to jump to a random address, resulting in insidious data-dependent bugs.
Variants include "trash" the stack, scribble the stack, mangle the stack.