<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/60994>60994</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
lldb cannot print std::string
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
fonqL
</td>
</tr>
</table>
<pre>
OS: Ubuntu 22.04
```shell
$ clang -v
Ubuntu clang version 15.0.6
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/11
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/12
Selected GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/12
Candidate multilib: .;@m64
Candidate multilib: 32;@m32
Candidate multilib: x32;@mx32
Selected multilib: .;@m64
$ lldb --version
lldb version 15.0.6
```
main.cpp
```cpp
#include <iostream>
#include <vector>
using namespace std;
int main(int argc, char **argv) {
int a = 0;
std::string s = "1234555";
std::vector<int> c{1, 2, 3, 4, 5};
s[0] = '9';
std::cout << s;
}
```
Compile:
```shell
$ g++ -g -O0 main.cpp -o gcc_out
$ clang++ -g -O0 main.cpp -o clang_out
```
**lldb can print std::string when using gcc_out, but shows error when using clang_out.**
```
(lldb) print s
error: expression failed to parse:
error: <user expression 0>:1:1: incomplete type 'std::string' (aka 'std::basic_string<>') where a complete type is required
s
^
```
When using Codelldb to debug in VScode, it shows `error: summary string parsing error`
I know a workaround is to add `-fstandalone-debug` flag, but that's a bit annoying.
Another solution is install a debug version of libstdc++. I think I have already installed it.
I wonder if there is another way to solve it.
```shell
$ dpkg --list|grep libstdc++
ii libstdc++-11-dev:amd64 11.3.0-1ubuntu1~22.04 amd64 GNU Standard C++ Library v3 (development files)
ii libstdc++-12-dev:amd64 12.1.0-2ubuntu1~22.04 amd64 GNU Standard C++ Library v3 (development files)
ii libstdc++-12-doc 12.1.0-2ubuntu1~22.04 all GNU Standard C++ Library v3 (documentation files)
ii libstdc++6:amd64 12.1.0-2ubuntu1~22.04 amd64 GNU Standard C++ Library v3
ii libstdc++6-12-dbg:amd64 12.1.0-2ubuntu1~22.04 amd64 GNU Standard C++ Library v3 (debug build)
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzEVs1u4zgSfhr6UpAgkfqxDz44dtwI0Ng-ZHv32KDEsswNRapJyk4u--wDSrIdu92ZHmAaIySyXfyq6qsfFsmdk41GXJL8geSbGe_93tjlzujvn2eVEW_LL8-EreBr1WvfA6VxkpFkQ5IVKZLxz-1RqUlGM6gV1w1Eh1Ey6Y3CA1onjYY0j5O4GAH_5rZBH1y8zotvRRZ1daSk7l-jRvcTZG-RC2iNQBWAnXHydVx60s5zpVBspA1LhG57ZwndVlKPiK3ptYCaayEF9wif1muQoxb30ugftOg2jgndKlkRum3qmtDtxOxCi27T9Peap6P5Z1RYexR_t931mXDbKy-DFltBTNgDyZK2yD5CMTrB2IfGXs-4V3YbzUdOQw8pJSqIoqlfRvkgu9dB50acfg7vlksd1133XnYGXuSUSV2rXiAQtpbGeYu8Jezx3vIBa2_sebF3UjegeYuu4zWC8yJE8s6f1B4CD0Ln4Su3TU3oGuo9t0DoitAVt82B0AWQclIEGJBA2AaSszkYja8IWzlvg1s3IAilKWVZnueE0gv6DD4xXkvtCXuEmpQPaaBAw4uFVxZeOSk3N9wBHMkfEpJvJk_lgtDyHqPa9D6kh7A1uIuVcvNBddam7aTCYOBefW4mSkPoA6EPEDUQfUngVFqIDDR1_c30_mb6_Bw_LL_TuEduLM3QbjXX0NlQktsCHPeoYWyBEwe6hqr34Pbm6ACtNfY96uw5Hu3fDfxEYB68h8aYnI_ywWbYMvjaWXTDRthxqVCAN9Bx6y4ZPWMJW_cO7XudJPQwW6XTP0hdm7ZT6BH8W4eh2DfhEloCoXP-wq8WK-5k_W2ChA54DD1CFyFui8Dh2q50YPF7Ly2KkeQUF8kfPyjHfy85XIcTINTFGxBY9Q1IDf95ro3AkH15Sj4pknP8rm9bbt9gqlvIUvgc1689PcGLNkfgcDT2hdthsksXnHEhgtFo5zzXgiujMRoIkCKBneLNqfh-z33IEHCopAeutXmTuolHBytt_B4tOKP6MMSD9WmoA58iOk04swMlK-dFPXZzDE_g91K_wBPs-QGBq3Aqvp0MoADp41MgR6MFWpA78EMppAM-OT_ytxCSM-qAF5WPd6DoXhqIIiWdJ-W6sdhdk5vmnYRrcZSmkcADYSveiiKDNI1ZnERpP1wK0v8Ptwn48RnR0_PpX1_heUi7FbCetvZnWdlQ1QMLfSnwgMp0LWoPO6nQEbr4KSV6TYnGaZxE9J-mZOpfp6LU5cevUDF1H3gM94Y_I1P81sz8zOmQgqo5-7567hP56wUJu6vqpRLn6G_mzUwsmViwBZ_hMi3KkrF8nuSz_TJjJdLFbp4taJXMq7SkPM1zXsxZOa8LlszkkiaUJZTmacaKLI_neTWvBKaclrTmIidZgi2XKlbq0MbGNjPpXI_LIlksspniFSo3XMEp1XiEYTGc6flmZpdBJ6r6xpEsCVvQXax46RUuT2eVNv7-cTXrrVruve9ckNJtuCJKv--ruDZtuDWqw-kj6qz5H9ae0O3AwhG6HVj-EQAA__9Jb4qG">