Only vla_cleanup() on non-inline function termination

Inline function termination was causing a vla_cleanup() which meant
a flush of all already-evaluated vla sizes, meaning double evaluation
for runtime sizeof().
Merge branch 'feature/inline.vla' into feature/inline

This brings in inline-with-vla fixes.