There is no external demangling plug-in infrastructure at the moment, but you 
could add functionality that would allow it. No one is going to have D 
installed by default. Where do you expect your demangler dylib to live? Would 
you just add code that tries to locate the dylib in N places on the current 
system and try to dlopen it? Avoiding duplication and just not having the 
functionality at all unless something else is might not make it that useful. Is 
D stable? Is the mangling changing at all? Will you require a demangler to be 
vended with each new version of the tool? Are all previous demanglings still 
valid in newer versions? Can you figure out the version of the D from a 
compiled executable so that you might be able to locate one of 5 different 
installs of D and select the right one? Let me know what you use case is.


> On Sep 21, 2016, at 3:00 PM, Timothee Cour <> wrote:
> Is there a way to provide a hook (eg, via an extern(C) function, or using a 
> dynamically loaded shared library) to do this, so as to simply reuse D's 
> and make sure it's always in sync 
> with D's demangling instead of duplicating code
> On Wed, Sep 21, 2016 at 10:24 AM, Greg Clayton via lldb-dev 
> <> wrote:
> It might be nice to add demangling support to llvm and then use it by 
> modifying "Mangled::GetDemangledName()" in Mangled.cpp. This is where all 
> demangling happens. Hopefully you have a great prefix that won't conflict 
> with other languages "_Z" for C++, "_T" for swift. But the code in 
> Mangled::GetDemangledName() will look at the prefix and attempt to demangle 
> the name based on what prefix it starts with.
> > On Sep 21, 2016, at 5:52 AM, Johan Engelen via lldb-dev 
> > <> wrote:
> >
> > Hi all,
> >   I recently looked into adding demangling support for D in LLDB, but got 
> > lost in the code.
> > (right now, basic D support is there with:
> >
> > I'd like some pointers to where demangling is done for the other languages, 
> > and to where I should add D support for it.
> >
> > Thanks a lot,
> >   Johan
> >
> > _______________________________________________
> > lldb-dev mailing list
> >
> >
> _______________________________________________
> lldb-dev mailing list

lldb-dev mailing list

Reply via email to