We have a summary provider for std::string that is built into LLDB that must
not be working with the C++ runtime you are using. The current summary string
that is used is in source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp in
LoadLibStdcppFormatters:
lldb::TypeSummaryImplSP std_string_summary_sp(
new StringSummaryFormat(stl_summary_flags, "${var._M_dataplus._M_p}"));
So do a "frame var --raw msg" and see what the members of your std::string look
like. I am guessing you won't see "_M_dataplus" or "_M_p" in there. The "${var"
means your std::string variable, and we are trying to access
"msg._M_dataplus._M_p" to see what the string looks like.
> On Jun 24, 2019, at 10:26 PM, Bob Eastbrook via lldb-dev
> <[email protected]> wrote:
>
> With Clang 8.0.0 and libstd++ 9.1.1 on Fedora 30 x86_64, I get this
> error from LLDB when trying to see the value of a string:
>
> "error: summary string parsing error"
>
> The code is simply:
>
> std::string msg{"foo bar baz"};
>
> With libcxx 8.0.0, instead of the above error, I simply see "??" when
> inspecting the msg variable.
>
> All of the above works fine for me in Ubuntu 19.04. I only have the
> problem with Fedora 30. Tried in both CLion and VS Code.
>
> How should I troubleshoot this? Could I be missing a package?
> _______________________________________________
> lldb-dev mailing list
> [email protected]
> https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev
_______________________________________________
lldb-dev mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev