Как выполнить команду Finish, а затем еще одну из внутренних команд?

Это сокращенный пример структуры моего кода:

void increment(int j);

int main()
{
  int i = 0;

  while(1) {
    i = increment(i);
  }

  return 0;
}

int increment(int j)
{
  return j + 1;
}

А вот и соответствующий скрипт GDB:

b increment
command 1
finish
print i
continue
end

Проблема в том, что команда finishпрепятствует командам, которые идут после нее (а именно print iиcontinue)не вызываться.

Есть ли способ заставить GDB печатать iсразу после любого вызова increment?

11
задан maxschlepzig 5 March 2017 в 10:14
поделиться