[Lldb-commits] [PATCH] D118812: [lldb] Add a setting to skip long mangled names

Pavel Labath via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Thu Feb 3 02:32:07 PST 2022

labath added a comment.

In D118812#3292884 <https://reviews.llvm.org/D118812#3292884>, @labath wrote:

> And extracting the name this way will also save us from having to another parse of the demangled name (to extract the base name), so it's double goodness. I don't think the actual extraction should be that hard.

Actually, I now see that we already have code which does just that. The `mangled.DemangleWithRichManglingInfo` call will use the "partial" demangler to extract the interesting pieces of the mangled name. It will also save that demangled name, but it only does that to avoid another demangling operation. We could easily make it skip that step. And I see that the other patch does just that...

So I guess my question is: what does this patch buy us vs. just doing the second patch alone? It seems like it would be nice to be able to let the user break do `break set -n foo` and have it stop on `Something<RidiculouslyLongTemplate<...>>::foo`..

Is it maybe because then the `Something<RidiculouslyLongTemplate<...>>` will be stored as a part `foo`s "context" ? If so, maybe we could have it avoid storing the context instead? Or even better: store a simplified version of the scope with template gunk above some level removed?



More information about the lldb-commits mailing list