The Linux Kernel Is Now VLA (Variable-Length Array) Free
So C's VLA feature has been implemented on stack space. Why not on the heap? Seems safer. Is this strictly about convenience for implementation? Reclaiming stack memory at the end of the scope is already implemented, so I understand the motivation.What I don't understand is: after all these decades of stack smashing vulnerabilities, why would such a shortcut have been taken?Convenience costs performance, safety costs performance ... at some point you just have to suck it up and pay the performance penalty to make things safer and to improve programmer productivity.