[#absl-Symbolize]
= xref:absl.adoc[absl]::Symbolize
:relfileprefix: ../
:mrdocs:

Symbolizes a program counter (instruction pointer value) `pc` and, on success, writes the name to `out`&period; The symbol name is demangled, if possible&period; Note that the symbolized name may be truncated and will be NUL&hyphen;terminated&period; Demangling is supported for symbols generated by GCC 3&period;x or newer)&period; Returns `false` on failure&period;

== Synopsis

Declared in `&lt;absl&sol;debugging&sol;symbolize&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
bool
Symbolize(
    void const* pc,
    char* out,
    int out&lowbar;size);
----

== Description

Example&colon;

&sol;&sol; Print a program counter and its symbol name&period; static void DumpPCAndSymbol(void &ast;pc) &lcub; char tmp&lsqb;1024&rsqb;&semi; const char &ast;symbol &equals; &quot;(unknown)&quot;&semi; if (absl&colon;&colon;Symbolize(pc, tmp, sizeof(tmp))) &lcub; symbol &equals; tmp&semi; &rcub; absl&colon;&colon;PrintF(&quot;%p %sn&quot;, pc, symbol)&semi; &rcub;

== Return Value

True on success, false if the program counter could not be symbolized&period;

== Parameters

[cols="1,4"]
|===
| Name| Description
| *pc*
| Program counter (instruction pointer value) to symbolize&period;
| *out*
| Buffer to receive the demangled symbol name&period;
| *out&lowbar;size*
| Size, in bytes, of the `out` buffer&period;
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
