Since I am cited out of context, I should point out that my proposal 1) to add GNU nested functions to ISO C clearly points out the problem with executable stacks and points out alternative ways to implement them (including having a new function type 2).
Having clarified this, I am not sure it is fair to say that non-executable stack cause vulnerabilities, as they are a mitigation technique and return-oriented programming often defeats it. There are still important though.
uecker•29m ago
https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2661.pdf
https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2862.pdf
Having clarified this, I am not sure it is fair to say that non-executable stack cause vulnerabilities, as they are a mitigation technique and return-oriented programming often defeats it. There are still important though.