Re:RFC: C++ Buffer Hardening
by jeffbee on Thursday October 06, 2022 @09:59AM
(#33108225)
It’s difficult to imagine which applications would find the performance of an outline vector access acceptable. Generally vector::operator[] is represented in built programs by a single x86 mov. A call would wreck the performance. In languages with bounds-checked vectors, they don’t do it with library calls.
[ Parent
| on HN ]
I have practically always used bounds checked vectors and strings.
In the old days, all C++ frameworks bundled with compilers tended to have bounds checking enabled by default (Turbo Vision, OWL, VCL, MFC, PowerPlant, CSet++, Qt,...).
Nowadays I always set _ITERATOR_DEBUG_LEVEL to 1 on VC++, unless I am not allowed to.
Mostly the performance problems that were dealt with, had to do with badly chosen algorithms and data structures.
Modern Android ships with FORTIFY enabled.
https://android-developers.googleblog.com/2017/04/fortify-in...