Home

Demangled

Demangled is a cross-language demangling library and command-line tool designed to translate mangled symbol names produced by compilers into human-readable identifiers. It focuses on languages including C++, Rust, Go, D, and Swift, and is intended for use in debugging, profiling, crash reporting, and log analysis.

Demangled adopts a modular architecture with a core demangling engine and language-specific resolvers. The core implements

Clients can invoke the library directly from code or use the included command-line tool to demangle text

Demangled is distributed under an open-source license and maintained by an international community of contributors. It

Demangling refers to the process of restoring source-level identifiers from mangled names; it is a common task

common
mangling
formats
such
as
Itanium
C++
ABI
and
MSVC,
while
specialized
backends
handle
language-specific
schemes.
The
design
emphasizes
correctness,
performance,
and
extensibility,
allowing
new
demangling
grammars
to
be
added
without
modifying
existing
code.
It
provides
a
simple
API
for
embedding
in
applications
and
bindings
for
popular
languages.
streams,
stack
traces,
or
log
files.
It
supports
streaming
input
to
handle
large
dumps
efficiently,
and
it
can
be
integrated
with
build
pipelines
and
crash-report
systems
to
symbolicate
stack
traces
automatically.
accepts
community
contributions,
issue
reports,
and
feature
requests
through
its
public
repository
and
issue
tracker.
in
compiler
tooling
and
debugging
ecosystems.