Skip to content
This repository has been archived by the owner on Oct 12, 2022. It is now read-only.

Add cppdemangle in druntime #3002

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Commits on Apr 22, 2020

  1. Add cppdemangle in druntime

    Having a C++ symbol demangler is very useful, with this it will
    be possible to implement the C++ symbol demangle in the stacktrace.
    
    The demangling is done in Posix platform by function __cxa_demangle
    presents in Itanium C++ ABI (https://itanium-cxx-abi.github.io/cxx-abi/abi.html#demangler).
    
    Itanium C++ ABI is used practically in all modern C++ compilers on Posix,
    however old compilers (like GCC < 3.0) used a different name mangling,
    this is not a problem because DMD in fact only supports Itanium C++ ABI on Posix.
    
    For Windows instead the implementation it is provided by the UnDecorateSymbolName
    function present in the Debug Help Library.
    (https://docs.microsoft.com/en-us/windows/win32/api/dbghelp/nf-dbghelp-undecoratesymbolname)
    
    Signed-off-by: Ernesto Castellotti <[email protected]>
    Ernesto Castellotti committed Apr 22, 2020
    Configuration menu
    Copy the full SHA
    2e92b4a View commit details
    Browse the repository at this point in the history