Michael137 added a comment. In D136761#3885529 <https://reviews.llvm.org/D136761#3885529>, @labath wrote:
> Wow, another name parser I knew nothing about. :/ > > I'm probably being naive, but I don't suppose there's an easy a way to > reuse/repurpose the parser in the C++ language plugin for this (?) This is > the first time I see this code, so it's hard to construct counter-examples, > but I'd be surprised if this is correct. Hehe I agree this function could use some clean-up I tried to avoid going down that rabbit hole at the moment :) I wouldn't be shocked if there were edge-cases that don't work. The algorithm iiuc works as follows: 1. Find the opening function parenthesis (`open_paren`) and print out the string up to that point (effectively the function name) 2. For each variable in scope print out: `<var_name>=<var_representation>` 3. Find closing parenthesis 4. Print everything from closing parenthesis onward (I imagine this is to preserve function qualifiers) Where the reverse scan might go wrong is with `noexecept(...)` specifications. Will check... An alternative is to actually implement the `Language::GetFunctionDisplayName(Language::FunctionNameRepresentation::eNameWithNoArgs)` API for `CPlusPlusLanguage`. Currently it's a no-op (which is why we end up in this hand-rolled parser) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D136761/new/ https://reviews.llvm.org/D136761 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits