С++ имя mangling decoder для g++?

существует ли какой-либо С++-кодирующий декодер для g++?

+32
17 дек. '10 в 8:26
источник поделиться
3 ответа

Вы можете использовать С++ filter для демонстрации символов С++. Например,

$ c++filt -n _Z1fv
f()
+47
17 дек. '10 в 8:31
источник

Связанные вопросы


Похожие вопросы

С++ filter, пример использования здесь:

Можем ли мы увидеть код, созданный шаблоном, с помощью компилятора С++

+11
17 дек. '10 в 8:30
источник

Вы также можете быть заинтересованы в опции -C objdump:

objdump -CSr main.o

который разворачивает ссылки на перемещение, например:

  char *sn = new char[4];
10:   bf 04 00 00 00          mov    $0x4,%edi
15:   e8 00 00 00 00          callq  1a <main+0x1a>
                      16: R_X86_64_PC32       operator new[](unsigned long)-0x4

Без -C он отобразит искаженное имя _Znam.

Смотрите также: Может ли objdump отменять имена шаблонов С++?

Есть также некоторые онлайн-демонстранты, упомянутые в Есть ли онлайн-деманджер имени для С++?, например http://demangler.com/ Если он существует, есть SaaS.

nm также имеет параметр -C.

+1
05 июн. '15 в 12:11
источник

Посмотрите другие вопросы по меткам или Задайте вопрос