D demangler for C++

Witold Baryluk witold.baryluk at gmail.com
Sun Nov 27 23:12:35 UTC 2022


https://github.com/baryluk/d-demangle-cpp

D programming language (dlang) symbol name demangler for C++

```cpp
std::cout << 
demangle_d::demangle("_D3std5stdio__T8writeflnTaTiZQoFNfxAaiZv") 
<< std::endl;
// Will print: void std.stdio.writefln!(char, int)(const char[], 
int) @safe
```

Goals

* Easy of integration into any C++ codebase
* Flexible
* Code simplicity following the spec closely in shape

Status: Alpha.



The principal motivation was to have a clean-room, from scratch 
implementation, that can be easily used in various contexts. The 
code base is simple, and can be easily ported to other languages, 
and environment (i.e. kernel space).

Once this is polished down, I will be pushing this demangler to 
be integrated into few 3rd party code bases, for example Valgrind 
/ massif, heapcheak, pprof, tcmalloc, Linux perf, etc.



More information about the Digitalmars-d-announce mailing list