The executor() change from alloca() to emalloc() seems to have introduced a
memory leak (found it with --enable-debug). Before I try and fix it, are we
reverting back to do_alloca(), free_alloca()? (even though we should see
why this memory leak is happening anyway because we don't always use
alloca() for do_allocat()).