2017-01-07 24 views
5

周囲を見渡すと、C++シンボルのマングリングの方法よりもむしろC++シンボルのデエンギャングに関する質問がほとんどです。はい、-Sオプションを使用して、g++を呼び出すことができます。ダミーコードには、マングリングされるシンボルが含まれています。その結果のアセンブリを調べますが、GCCの名前マングリングに関する良いリファレンスや仕様を見つけることができませんでした。私が見つけた最も近いものはhttp://www.int0x80.gr/papers/name_mangling.pdfでしたが、テンプレートテンプレートのインスタンス化の方法や、_Z3fooIN3BarEE3FooIXT_EEvFoo<Bar> foo<Bar>()に変換されるようなものは含まれていないようです(どういうことか分かりますが、IXT_EEこの中にの後にNはありませんか?それはどういう意味ですか?)。 GCCのソース(https://github.com/gcc-mirror/gcc/blob/master/gcc/cp/mangle.c)からGCC C++ネームマングリングリファレンス

+3

GCCが使用するC++用のItanium ABIを検索します。 –

答えて