gcc -fsanitize многомерный массив - PullRequest
0 голосов
/ 23 июня 2018

При компиляции программы cpp, например

int main() {
  int a[5][5];
  cout << a[5][5];
}

скомпилировано с -fsanitzie = адрес Я получил исключение времени выполнения, но

int main() {
  int a[5][5];
  cout << a[3][5];
}

, который также находится вне диапазона, не вызывает этого. Есть ли способ заставить gcc также проверять наличие многомерных массивов, чтобы все индексы находились в диапазоне.

1 Ответ

0 голосов
/ 23 июня 2018

Я узнал, что -fsanitize = bounds поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...