[llvm-dev] Has the work in this talk been pushed: "Better C++ debugging using Clang Modules in LLDB"?
Raphael Isemann via llvm-dev
llvm-dev at lists.llvm.org
Tue Mar 3 12:38:18 PST 2020
The prototype is upstream and tested here , however as you can see in the tests it currently requires manually simplifying the expression result type ( e.g. std::vector<int>::size_type needs to be casted to size_t). Also you might easily run into some cases where LLDB can’t handle all these new C++ types in the debugger and crash. I’m currently hacking on some patches to get this enabled default soon-ish but there is no fixed ETA for this feature.
Regarding how you would use it you can just check the tests, but the general idea is to run `settings set target.import-std-module true` and then just run expressions in a program that used the STL in some form. But as said, the user experience is still quite crashy until I get some other fixes upstream. I’ll write it in the release notes when I think this is ready to be beta-tested.
> On Mar 3, 2020, at 12:14 PM, Jonas Devlieghere <jdevlieghere at apple.com> wrote:
> +Raphael who did the work for clang modules in the expression evaluator.
>> On Mar 3, 2020, at 11:47 AM, David Blaikie <dblaikie at gmail.com> wrote:
>> +some folks who probably worked on this/know more about it.
>> I'd imagine more detail would be required - like what platform you're on, whether you're building with modules, whether you enabled modular debug info (-gmodules, I think), etc.
>> On Mon, Mar 2, 2020 at 11:20 PM Jiading Gai via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>> I tried using lldb built from master, but still seeing some STL container member functions not recognizable in a debugging session. I am wondering if the work has been pushed to master; also if it's pushed but not enabled by default yet, is there a flag I can use to turn on the expression evaluator using Clang modules. Thanks a lot for the great work.
>> Best Regards,
>> LLVM Developers mailing list
>> llvm-dev at lists.llvm.org
More information about the llvm-dev