Sophie

Sophie

distrib > Mageia > 7 > armv7hl > media > core-updates > by-pkgid > bfb47da7e0322bcb0e23e4b1838d9db9 > files > 20

libstdc++-docs-8.4.0-1.mga7.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libstdc++: cxxabi.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">libstdc++
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('a00023.html','');});
/* @license-end */
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#namespaces">Namespaces</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">cxxabi.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><a href="a00023_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01647.html">__gnu_cxx::recursive_init_error</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:a01547"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01547.html">__gnu_cxx</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01551"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01551.html">abi</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a714cc1503d710689e591c9fc78d80d99"><td class="memItemLeft" align="right" valign="top"><a id="a714cc1503d710689e591c9fc78d80d99"></a>
typedef __cxa_cdtor_return_type(*&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_cdtor_type</b>) (void *)</td></tr>
<tr class="separator:a714cc1503d710689e591c9fc78d80d99"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a36d71e6f9c442362a531cd941963994f"><td class="memItemLeft" align="right" valign="top"><a id="a36d71e6f9c442362a531cd941963994f"></a>
__cxa_dependent_exception *&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_allocate_dependent_exception</b> () noexcept</td></tr>
<tr class="separator:a36d71e6f9c442362a531cd941963994f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a10294435545aa2855130c5500b749ef5"><td class="memItemLeft" align="right" valign="top"><a id="a10294435545aa2855130c5500b749ef5"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_atexit</b> (void(*)(void *), void *, void *) noexcept</td></tr>
<tr class="separator:a10294435545aa2855130c5500b749ef5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05d40437b2a797eda482936fba37393e"><td class="memItemLeft" align="right" valign="top"><a id="a05d40437b2a797eda482936fba37393e"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_bad_cast</b> () __attribute__((__noreturn__))</td></tr>
<tr class="separator:a05d40437b2a797eda482936fba37393e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09286cc1a4ed631f95a11518af32d0a0"><td class="memItemLeft" align="right" valign="top"><a id="a09286cc1a4ed631f95a11518af32d0a0"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_bad_typeid</b> () __attribute__((__noreturn__))</td></tr>
<tr class="separator:a09286cc1a4ed631f95a11518af32d0a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a043284a863f567d974b0e8177a4563"><td class="memItemLeft" align="right" valign="top"><a id="a0a043284a863f567d974b0e8177a4563"></a>
void *&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_begin_catch</b> (void *) noexcept</td></tr>
<tr class="separator:a0a043284a863f567d974b0e8177a4563"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adc4f240390684501910f209038893596"><td class="memItemLeft" align="right" valign="top"><a id="adc4f240390684501910f209038893596"></a>
<a class="el" href="a01671.html">std::type_info</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_current_exception_type</b> () noexcept __attribute__((__pure__))</td></tr>
<tr class="separator:adc4f240390684501910f209038893596"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85649606b69bbe801b2d7e5dc4ffc5f4"><td class="memItemLeft" align="right" valign="top"><a id="a85649606b69bbe801b2d7e5dc4ffc5f4"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_deleted_virtual</b> (void) __attribute__((__noreturn__))</td></tr>
<tr class="separator:a85649606b69bbe801b2d7e5dc4ffc5f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f77048f40022ee20f49f773defc9c27"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00023.html#a0f77048f40022ee20f49f773defc9c27">__cxxabiv1::__cxa_demangle</a> (const char *__mangled_name, char *__output_buffer, size_t *__length, int *__status)</td></tr>
<tr class="separator:a0f77048f40022ee20f49f773defc9c27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a770a73f25be21598aa6aa1aa8f2ba5e5"><td class="memItemLeft" align="right" valign="top"><a id="a770a73f25be21598aa6aa1aa8f2ba5e5"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_end_catch</b> ()</td></tr>
<tr class="separator:a770a73f25be21598aa6aa1aa8f2ba5e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40c43f1d467d315427cf35ffaf17c300"><td class="memItemLeft" align="right" valign="top"><a id="a40c43f1d467d315427cf35ffaf17c300"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_finalize</b> (void *)</td></tr>
<tr class="separator:a40c43f1d467d315427cf35ffaf17c300"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d49abdcc8a46715bb1de4415db2c34b"><td class="memItemLeft" align="right" valign="top"><a id="a9d49abdcc8a46715bb1de4415db2c34b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_free_dependent_exception</b> (__cxa_dependent_exception *) noexcept</td></tr>
<tr class="separator:a9d49abdcc8a46715bb1de4415db2c34b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac433ad8c1b8ead109b381605266d56e6"><td class="memItemLeft" align="right" valign="top"><a id="ac433ad8c1b8ead109b381605266d56e6"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_free_exception</b> (void *) noexcept</td></tr>
<tr class="separator:ac433ad8c1b8ead109b381605266d56e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59be6e1b9ed193235ecf992261d33fd3"><td class="memItemLeft" align="right" valign="top"><a id="a59be6e1b9ed193235ecf992261d33fd3"></a>
void *&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_get_exception_ptr</b> (void *) noexcept __attribute__((__pure__))</td></tr>
<tr class="separator:a59be6e1b9ed193235ecf992261d33fd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77f0efa15a2746ea23155fd9142c0ace"><td class="memItemLeft" align="right" valign="top"><a id="a77f0efa15a2746ea23155fd9142c0ace"></a>
__cxa_eh_globals *&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_get_globals</b> () noexcept __attribute__((__const__))</td></tr>
<tr class="separator:a77f0efa15a2746ea23155fd9142c0ace"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d7ceee839d7ea86a845b51a04987da9"><td class="memItemLeft" align="right" valign="top"><a id="a7d7ceee839d7ea86a845b51a04987da9"></a>
__cxa_eh_globals *&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_get_globals_fast</b> () noexcept __attribute__((__const__))</td></tr>
<tr class="separator:a7d7ceee839d7ea86a845b51a04987da9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1c7b0c7cf02c6d6c981b44b5b791574"><td class="memItemLeft" align="right" valign="top"><a id="ad1c7b0c7cf02c6d6c981b44b5b791574"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_guard_abort</b> (__guard *) noexcept</td></tr>
<tr class="separator:ad1c7b0c7cf02c6d6c981b44b5b791574"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd9a1180819f348ff7991826afb02e0c"><td class="memItemLeft" align="right" valign="top"><a id="afd9a1180819f348ff7991826afb02e0c"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_guard_acquire</b> (__guard *)</td></tr>
<tr class="separator:afd9a1180819f348ff7991826afb02e0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:affd602d23f7fef5b7675d9e1941d3954"><td class="memItemLeft" align="right" valign="top"><a id="affd602d23f7fef5b7675d9e1941d3954"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_guard_release</b> (__guard *) noexcept</td></tr>
<tr class="separator:affd602d23f7fef5b7675d9e1941d3954"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6baea790a70c43348586b8ec3efb197d"><td class="memItemLeft" align="right" valign="top"><a id="a6baea790a70c43348586b8ec3efb197d"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_pure_virtual</b> (void) __attribute__((__noreturn__))</td></tr>
<tr class="separator:a6baea790a70c43348586b8ec3efb197d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa41ba1944f5ac6058230277f5140ae0f"><td class="memItemLeft" align="right" valign="top"><a id="aa41ba1944f5ac6058230277f5140ae0f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_rethrow</b> () __attribute__((__noreturn__))</td></tr>
<tr class="separator:aa41ba1944f5ac6058230277f5140ae0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad90a651344da0762844b5fd5e75a4e02"><td class="memItemLeft" align="right" valign="top"><a id="ad90a651344da0762844b5fd5e75a4e02"></a>
int&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_thread_atexit</b> (void(*)(void *), void *, void *) noexcept</td></tr>
<tr class="separator:ad90a651344da0762844b5fd5e75a4e02"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f8b68d9818fef43ee38cdf958dd8633"><td class="memItemLeft" align="right" valign="top"><a id="a6f8b68d9818fef43ee38cdf958dd8633"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_throw</b> (void *, <a class="el" href="a01671.html">std::type_info</a> *, void(*)(void *)) __attribute__((__noreturn__))</td></tr>
<tr class="separator:a6f8b68d9818fef43ee38cdf958dd8633"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2ee1225509c2224710f44d7d604a988"><td class="memItemLeft" align="right" valign="top"><a id="ad2ee1225509c2224710f44d7d604a988"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_throw_bad_array_new_length</b> () __attribute__((__noreturn__))</td></tr>
<tr class="separator:ad2ee1225509c2224710f44d7d604a988"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a681e1f3a92903179376b965ab160dcee"><td class="memItemLeft" align="right" valign="top"><a id="a681e1f3a92903179376b965ab160dcee"></a>
__cxa_vec_ctor_return_type&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_vec_cctor</b> (void *__dest_array, void *__src_array, size_t __element_count, size_t __element_size, __cxa_cdtor_return_type(*__constructor)(void *, void *), __cxa_cdtor_type __destructor)</td></tr>
<tr class="separator:a681e1f3a92903179376b965ab160dcee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac3252596adb9b828c0d0635606caa121"><td class="memItemLeft" align="right" valign="top"><a id="ac3252596adb9b828c0d0635606caa121"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_vec_cleanup</b> (void *__array_address, size_t __element_count, size_t __s, __cxa_cdtor_type __destructor) noexcept</td></tr>
<tr class="separator:ac3252596adb9b828c0d0635606caa121"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a81d8444cbca2379f83bd2f595898a7f4"><td class="memItemLeft" align="right" valign="top"><a id="a81d8444cbca2379f83bd2f595898a7f4"></a>
__cxa_vec_ctor_return_type&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_vec_ctor</b> (void *__array_address, size_t __element_count, size_t __element_size, __cxa_cdtor_type __constructor, __cxa_cdtor_type __destructor)</td></tr>
<tr class="separator:a81d8444cbca2379f83bd2f595898a7f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b063a83c3ea04af4a7984d361b31f3d"><td class="memItemLeft" align="right" valign="top"><a id="a7b063a83c3ea04af4a7984d361b31f3d"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_vec_delete</b> (void *__array_address, size_t __element_size, size_t __padding_size, __cxa_cdtor_type __destructor)</td></tr>
<tr class="separator:a7b063a83c3ea04af4a7984d361b31f3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79620258b04604c4cf027ff0b1f72d5b"><td class="memItemLeft" align="right" valign="top"><a id="a79620258b04604c4cf027ff0b1f72d5b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_vec_delete2</b> (void *__array_address, size_t __element_size, size_t __padding_size, __cxa_cdtor_type __destructor, void(*__dealloc)(void *))</td></tr>
<tr class="separator:a79620258b04604c4cf027ff0b1f72d5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7482e00995d041475bd6ef5d48202e6"><td class="memItemLeft" align="right" valign="top"><a id="ad7482e00995d041475bd6ef5d48202e6"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_vec_delete3</b> (void *__array_address, size_t __element_size, size_t __padding_size, __cxa_cdtor_type __destructor, void(*__dealloc)(void *, size_t))</td></tr>
<tr class="separator:ad7482e00995d041475bd6ef5d48202e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2c797009a6270f9fbd4da48adccbcf3"><td class="memItemLeft" align="right" valign="top"><a id="af2c797009a6270f9fbd4da48adccbcf3"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_vec_dtor</b> (void *__array_address, size_t __element_count, size_t __element_size, __cxa_cdtor_type __destructor)</td></tr>
<tr class="separator:af2c797009a6270f9fbd4da48adccbcf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4871f178b3711f36f5a74b1a9b3284a6"><td class="memItemLeft" align="right" valign="top"><a id="a4871f178b3711f36f5a74b1a9b3284a6"></a>
void *&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_vec_new</b> (size_t __element_count, size_t __element_size, size_t __padding_size, __cxa_cdtor_type __constructor, __cxa_cdtor_type __destructor)</td></tr>
<tr class="separator:a4871f178b3711f36f5a74b1a9b3284a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab50b24d49b3b5a411e52250f546b483f"><td class="memItemLeft" align="right" valign="top"><a id="ab50b24d49b3b5a411e52250f546b483f"></a>
void *&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_vec_new2</b> (size_t __element_count, size_t __element_size, size_t __padding_size, __cxa_cdtor_type __constructor, __cxa_cdtor_type __destructor, void *(*__alloc)(size_t), void(*__dealloc)(void *))</td></tr>
<tr class="separator:ab50b24d49b3b5a411e52250f546b483f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b8cc115b6c63783690b2980f3ded9da"><td class="memItemLeft" align="right" valign="top"><a id="a2b8cc115b6c63783690b2980f3ded9da"></a>
void *&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__cxa_vec_new3</b> (size_t __element_count, size_t __element_size, size_t __padding_size, __cxa_cdtor_type __constructor, __cxa_cdtor_type __destructor, void *(*__alloc)(size_t), void(*__dealloc)(void *, size_t))</td></tr>
<tr class="separator:a2b8cc115b6c63783690b2980f3ded9da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84ccacdec19fd65084c7591a1ea062a8"><td class="memItemLeft" align="right" valign="top"><a id="a84ccacdec19fd65084c7591a1ea062a8"></a>
void *&#160;</td><td class="memItemRight" valign="bottom"><b>__cxxabiv1::__dynamic_cast</b> (const void *__src_ptr, const __class_type_info *__src_type, const __class_type_info *__dst_type, ptrdiff_t __src2dst)</td></tr>
<tr class="separator:a84ccacdec19fd65084c7591a1ea062a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>The header provides an interface to the C++ ABI. </p>

<p class="definition">Definition in file <a class="el" href="a00023_source.html">cxxabi.h</a>.</p>
</div><h2 class="groupheader">Function Documentation</h2>
<a id="file_a0f77048f40022ee20f49f773defc9c27"></a>
<h2 class="memtitle"><span class="permalink"><a href="#file_a0f77048f40022ee20f49f773defc9c27">&#9670;&nbsp;</a></span>__cxa_demangle()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* __cxxabiv1::__cxa_demangle </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>__mangled_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>__output_buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t *&#160;</td>
          <td class="paramname"><em>__length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>__status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Demangling routine. ABI-mandated entry point in the C++ runtime library for demangling. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">__mangled_name</td><td>A NUL-terminated character string containing the name to be demangled.</td></tr>
    <tr><td class="paramname">__output_buffer</td><td>A region of memory, allocated with malloc, of <em>*__length</em> bytes, into which the demangled name is stored. If <em>__output_buffer</em> is not long enough, it is expanded using realloc. <em>__output_buffer</em> may instead be NULL; in that case, the demangled name is placed in a region of memory allocated with malloc.</td></tr>
    <tr><td class="paramname">__length</td><td>If <em>__length</em> is non-NULL, the length of the buffer containing the demangled name is placed in <em>*__length</em>.</td></tr>
    <tr><td class="paramname">__status</td><td><em>*__status</em> is set to one of the following values: 0: The demangling operation succeeded. -1: A memory allocation failure occurred. -2: <em>mangled_name</em> is not a valid name under the C++ ABI mangling rules. -3: One of the arguments is invalid.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A pointer to the start of the NUL-terminated demangled name, or NULL if the demangling fails. The caller is responsible for deallocating this memory using <code>free</code>.</dd></dl>
<p>The demangling is performed using the C++ ABI mangling rules, with GNU extensions. For example, this function is used in __gnu_cxx::__verbose_terminate_handler.</p>
<p>See <a href="https://gcc.gnu.org/onlinedocs/libstdc++/manual/ext_demangling.html">https://gcc.gnu.org/onlinedocs/libstdc++/manual/ext_demangling.html</a> for other examples of use.</p>
<dl class="section note"><dt>Note</dt><dd>The same demangling functionality is available via libiberty (<code>&lt;libiberty/demangle.h&gt;</code> and <code>libiberty.a</code>) in GCC 3.1 and later, but that requires explicit installation (<code>&ndash;enable-install-libiberty</code>) and uses a different API, although the ABI is unchanged. </dd></dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_434a3f2b81816e64e09d7f43ca77c261.html">libstdc++-v3</a></li><li class="navelem"><a class="el" href="dir_a90251c88a7d73de47aa10417ea6b112.html">libsupc++</a></li><li class="navelem"><a class="el" href="a00023.html">cxxabi.h</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
  </ul>
</div>
</body>
</html>