Когда у меня есть дамп (после Segfault) и кадр я заинтересован в выглядит следующим образом:Можно ли просмотреть неопределенный аргумент frame/function с помощью GDB?
#2 0x000000000043cbfa in foo::Bar::baz(float)()
Как извлечь значение аргумента в данном кадре с помощью GDB?
Вы можете попробовать вручную изучить стек кадров (информационный кадр, info reg, x/ x $ sp ...). Похоже, для этой функции отсутствует информация об отладке, поэтому вам, возможно, придется разобрать код и попытаться понять, что происходит. –
dbrank0
Название функции имеет достаточно информации для меня. Я просто хочу знать значение аргумента. Вопрос в основном, если я могу получить ценные вещи, не разбирая код. У меня есть базовые знания о gdb, и быстрый googling не дал мне никаких результатов. –
Не зная, где этот аргумент хранится во время сбоя - например, он может находиться в регистре в стеке, в зависимости от соглашения о вызове и текущего состояния функции. Никто не знает, не зная, по крайней мере, какой процессор и какая ОС (и может зависеть от того, какой компилятор и какой уровень оптимизации используется тоже) –