Hi, as I brainstormed how prevent possible overflows in memory allocation I
came with heretic idea:

For gcc -D_FORTIFY_SOURCE=2 we expand all multiplication with size_t
type by one that checks for integer overflow and aborts on it. This
would prevent most overflow at cost of breaking some legitimate
applications that use multiplication in clever way.

A less heretic way that is applicable for C++ would be write a class
size_t overflow that would do arithmetic in saturating way and issue
warnings when there is a size_t multiplication.

Comments?

Reply via email to