Есть ли способ выполнить проверку границ массива в С++, скомпилированный с помощью g++
?
-
Valgrind Memcheck не может обнаружить переполнение массивов, выделенных в стеке.
-
Расширение GCC, включенное
-fbounds-checking
, реализовано только для передней панели C.
В идеале исходный код не должен изменяться каким-либо образом. Использование std::vector
, std::tr1::array
или boost::array
не является опцией, потому что кодовая база большая, и такой сдвиг был бы неосуществимым.