Oracle Solaris Studio 12.4 Man Pages

印刷ビューの終了

更新: January 2015
 
 

cplus_demangle_noret(3)

名前

demangle , cplus_demangle , cplus_demangle_noret - C++ のエンコードされたシンボル名をデコードする

形式

cc [ flag ...  ] file [ library ...  ] -ldemangle
#include <demangle.h>
int  cplus_demangle(  const  char *symbol, char *interpreta-
tion, size_t size );

説明

説明

cplus_demangle() は、エンコードされた C++ リンカーのシンボル名 (符号化名) を解釈 (復号化) します。

cplus_demangle_noret() では、関数シンボルの戻り型が解釈に含まれない点を除き、同じ処理が行われます。

C++ リンカーのシンボル名にはエンコードされないものがあります。このような場合、戻り値は DEMANGLE_ENAME になります。

symbol 文字列パラメータは、リンカーのシンボル名を指します。

interpretation パラメータは、ユーザー指定の出力文字列バッファー (サイズは size バイト) を指します。

cplus_demangle() および cplus_demangle_noret() の戻り値は次のとおりです。

0 (ゼロ)

symbol パラメータはエンコードされた有効な名前であり、interpretation の内容はデコードされた名前です。

DEMANGLE_ENAME

symbol パラメータはエンコードされた名前ではないか、symbol パラメータは誤ってエンコードされた名前です。

interpretation バッファーの内容は symbol の内容のコピーです。

DEMANGLE_ESPACE

interpretation 出力バッファーが小さすぎて、解釈 (デコードされた名前またはリンカーのシンボル名) を格納できません。

interpretation バッファーの内容は未定義です。

cplus_demangle() および cplus_demangle_noret() は、Sun WorkShop C++ コンパイラのバージョン 3.0.1、4.0.1、4.1、4.2、5.0、5.1、および 5.2 でエンコードされた名前を処理します。

cplus_demangle() および cplus_demangle_noret() は、demangle() に代わる改良版です。

関連項目

CC(1), dem(1), c++filt(1)