There's a good reason why you want to be able to support more than 16,384 local variables in a C function. Some compilers for functional languages (say Scheme) can compile a whole Scheme module to a single C function. The idea is that Scheme features tail-calls optimization, so it allows you to implement some function calls as a C goto (which is very efficient).
Such machine-generated code can get quite big. It would really sucks to have a silly hard-fixed limit for the number of variables in a function.
Now I understand that in the case of the anecdote the programmer might really have had more than 16,384 variables in a function for hand-written code. That would be /very/ scary.