mirror of
https://forge.sourceware.org/marek/gcc.git
synced 2026-02-22 03:47:02 -05:00
libstdc++: Adjust uses of null pointer constants in docs
libstdc++-v3/ChangeLog: * doc/xml/manual/extensions.xml: Fix example to declare and qualify std::free, and use NULL instead of 0. * doc/html/manual/ext_demangling.html: Regenerate. * libsupc++/cxxabi.h: Adjust doxygen comments.
This commit is contained in:
@@ -26,6 +26,7 @@
|
||||
</p><pre class="programlisting">
|
||||
#include <exception>
|
||||
#include <iostream>
|
||||
#include <cstdlib>
|
||||
#include <cxxabi.h>
|
||||
|
||||
struct empty { };
|
||||
@@ -33,7 +34,6 @@ struct empty { };
|
||||
template <typename T, int N>
|
||||
struct bar { };
|
||||
|
||||
|
||||
int main()
|
||||
{
|
||||
int status;
|
||||
@@ -43,11 +43,9 @@ int main()
|
||||
bar<empty,17> u;
|
||||
const std::type_info &ti = typeid(u);
|
||||
|
||||
realname = abi::__cxa_demangle(ti.name(), 0, 0, &status);
|
||||
realname = abi::__cxa_demangle(ti.name(), NULL, NULL, &status);
|
||||
std::cout << ti.name() << "\t=> " << realname << "\t: " << status << '\n';
|
||||
free(realname);
|
||||
|
||||
return 0;
|
||||
std::free(realname);
|
||||
}
|
||||
</pre><p>
|
||||
This prints
|
||||
|
||||
@@ -521,6 +521,7 @@ get_temporary_buffer(5, (int*)0);
|
||||
<programlisting>
|
||||
#include <exception>
|
||||
#include <iostream>
|
||||
#include <cstdlib>
|
||||
#include <cxxabi.h>
|
||||
|
||||
struct empty { };
|
||||
@@ -528,7 +529,6 @@ struct empty { };
|
||||
template <typename T, int N>
|
||||
struct bar { };
|
||||
|
||||
|
||||
int main()
|
||||
{
|
||||
int status;
|
||||
@@ -538,11 +538,9 @@ int main()
|
||||
bar<empty,17> u;
|
||||
const std::type_info &ti = typeid(u);
|
||||
|
||||
realname = abi::__cxa_demangle(ti.name(), 0, 0, &status);
|
||||
realname = abi::__cxa_demangle(ti.name(), NULL, NULL, &status);
|
||||
std::cout << ti.name() << "\t=> " << realname << "\t: " << status << '\n';
|
||||
free(realname);
|
||||
|
||||
return 0;
|
||||
std::free(realname);
|
||||
}
|
||||
</programlisting>
|
||||
<para>
|
||||
|
||||
@@ -169,7 +169,7 @@ namespace __cxxabiv1
|
||||
* @param __output_buffer A region of memory, allocated with
|
||||
* malloc, of @a *__length bytes, into which the demangled name is
|
||||
* stored. If @a __output_buffer is not long enough, it is
|
||||
* expanded using realloc. @a __output_buffer may instead be NULL;
|
||||
* expanded using realloc. @a __output_buffer may instead be null;
|
||||
* in that case, the demangled name is placed in a region of memory
|
||||
* allocated with malloc.
|
||||
*
|
||||
@@ -184,7 +184,7 @@ namespace __cxxabiv1
|
||||
* -3: One of the arguments is invalid.
|
||||
*
|
||||
* @return A pointer to the start of the NUL-terminated demangled
|
||||
* name, or NULL if the demangling fails. The caller is
|
||||
* name, or a null pointer if the demangling fails. The caller is
|
||||
* responsible for deallocating this memory using @c free.
|
||||
*
|
||||
* The demangling is performed using the C++ ABI mangling rules,
|
||||
|
||||
Reference in New Issue
Block a user