8 #define SCARAB_API_EXPORTS 25 std::string
demangle(
const char* a_name )
30 std::unique_ptr< char, void(*)( void* ) > res( abi::__cxa_demangle( a_name, NULL, NULL, &t_status ), std::free );
32 return ( t_status==0 ) ? res.get() : a_name ;
40 handle(
char* a_ptr ) : f_ptr( a_ptr ) {}
41 ~handle() { std::free( f_ptr ); }
45 std::string
demangle(
const char* a_name )
50 handle result( abi::__cxa_demangle( a_name, NULL, NULL, &t_status ) );
52 return ( t_status==0 ) ? result.f_ptr : a_name ;
std::string demangle(const char *a_name)