2017-01-07 11 views
5

주위를 둘러 보면서, 나는 C++ 심볼을 엉망으로 만드는 방법보다는 주로 붕괴에 관한 질문을 봅니다. 예, -S 옵션을 사용하여 맹 글링 할 심볼을 포함하는 더미 코드에서 g++을 호출 한 다음 결과 어셈블리를 검사 할 수 있지만 GCC의 이름 변환에서 좋은 참조 또는 사양을 찾을 수 없었습니다. 내가 찾을 수있는 가장 가까운 것은 http://www.int0x80.gr/papers/name_mangling.pdf에 있었지만 이름 템플릿 인스턴스화가 어떻게 엉망이되는지 또는 왜 _Z3fooIN3BarEE3FooIXT_EEvFoo<Bar> foo<Bar>()으로 변환 될지를 다루지 않는 것 같습니다 (어떻게 볼 수는 있지만, 대체적으로 IXT_EE) 이 중 뒤에 N이 없습니까? 그게 무슨 뜻입니까?). GCC의 소스에서GCC C++ 이름 맹 글링 레퍼런스

+3

GCC가 사용하는 C++에 대한 아이테니엄 ABI를 검색합니다. –

답변