For example: I understand why the standard was written the way it was but syntactic closures in C++ are way worse than GNU C.
For example: I understand why the standard was written the way it was but syntactic closures in C++ are way worse than GNU C.
I remember GNU GRUB going through and getting rid of all of them.
I'm not familiar enough with ARM - what does ARM Cortex give you here?
I saw a talk about weird machines. The upshot of it is if you can clobber the return address on the stack you can usually create a weird machine that you can then program[1]. Leads me to believe that if you are putting entrusted data and return addresses on the same stack you're in a state of sin security wise.
https://en.wikipedia.org/wiki/Weird_machine
[1] Also saw an exploit on an embedded system where they leveraged that even though the memory was locked you could set the program counter and read/write registers via jtag. Using that they were able in short order to recover the devices security keys and re-flash it with their own code.
Eg, https://news.ycombinator.com/item?id=21635551 with alternating ro+x and rw-x pages holding thunks and fptr+data pairs.
[1] https://gcc.gnu.org/onlinedocs/gcc/Nested-Functions.html
Although I’m not sure I agree about the “ergonomic” thing.