<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/97140>97140</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            why VD->dump() show invalid vartype?
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          boluo250
      </td>
    </tr>
</table>

<pre>
    mycode
```
bool Visitor::VisitVarDecl(VarDecl *VD)
{
    SourceLocation srcLoc = VD->getLocation();

    if (srcMgr.isInSystemHeader(srcMgr.getExpansionLoc(VD->getBeginLoc()))) {
        return true;
    }

    if (srcMgr.getFileCharacteristic(srcLoc) == SrcMgr::C_System ||
        srcMgr.getFileCharacteristic(srcLoc) == SrcMgr::C_ExternCSystem) {
        return true;
    }
    // 检查变量是否有初始化表达式
    if (!VD->hasInit()) {
        VD->dump();
        return true;
    }
    VD->dump(); 
}
```

'''

'''
print

```
VarDecl 0x55d65df37a68 </root/h30038243/k30056123/test/tmp_case5/e.cpp:16:2, col:14> col:14 invalid s2 'std::string':'std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >'
s2
VarDecl 0x55d65df37b18 </root/h30038243/k30056123/test/tmp_case5/e.cpp:17:2, col:9> col:9 invalid s1 'std::string':'std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >'
s1
VarDecl 0x55d65df37ba8 </root/h30038243/k30056123/test/tmp_case5/e.cpp:18:2, col:9> col:9 invalid s3 'std::string':'std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >'
s3
```

my analyze code

```
#include "e.h"
#include <memory>
#include <string>

int main(int argc, const char *argv[]){
        std::string s2 = "abc";
        string s1 = func();
        string s3 = "a";
        int a = 1;
        int b = func2();
        int64_t c = 2;
        return 0;
}
```
why VD->dump() show string invalid vartype? but int type show no invalid
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzMVl1vqzgQ_TWTF-tGxubDPPBAAmiv1H2q1NfIGBe8CziyTdvsr18ZSNI07dV-3IcbWcl4Zjg-c7A94daqdpQyg2gHUbHhk-u0yWrdT5pEeFPr5pQNJ6EbCbgAnEOM1zFPa6179KSsctoAzYHm8-SJm0KKHghbLQQkfyqApCtKslsMhBB61JMR8kEL7pQekTXiQQsEtEBPxTegZSvdOQiEeQy6Pn3FUM8ICLNG_N6arbLfx8eTdXL4TfJGmmukla58O_LRKj0-aOH5nZfYyVatPr_EeaAbqv5jpJvMiJyZ5IWI90NS_JBVK12lernvuOHCSaOsU2IJz8umvmRf9eOcv6i5PyyFIEj2ftww-X_A5ZuTZtwv-P-t0nlCKiAVgjKGnALD3kgryCMoI2AVpAzKFFjibR9ikFc-lGLI49mzB5bOyQzSwht5Amw3e_aQxlAyyAPImTd2pR9lBLu9B_ygNJBgeZ8dt99H5S7v8r62Ja-ZhuOHPfWviv8EBZ13ePHpgVm_SbKOr51Ho0Z3E79FOp8s_BZFTRw1zzThMUNA90Aqo7UDUnUUY8pISIFUf1KMozgg3nbS-rAbjgfBrYyAVHIrjkegeRADzQmQPRK69_MQaHmxkRpfeK8aZAkCkljXLNvJOqPG1nOn-Xv_4SDe3oJgmdTcKnFYU-ledNz4dS7J3nFwhitnz2Fa3mTwvvc3gb9rznE056yaWfKlNnXwE7RJbrVJr9KkV2WCX1KZ4Gtl-E9Qhv0TZegvqQz9wUEdToiPvD_9JdG7HvhpPqFqFP3USASEyG0HhNxH6H6QgzYnT-CT4LnO8v1CanRo4Mo3P29y04pF6NE65CvyzZWb9mXp4f4aSi4NMv0g93xwaeE58lp4jvR97pISzCnP0yjuGu4lh15gPoDMHOdg8NFdX3DJPbAaXRweHFpa_w3kehfjq--L2_W1O93dych2-hWttM9b8YUbdzpKoBWqJ4c8OT9fckd9zts0GW1SmvKNzIIkSOOQxEm46bI6pjxsCAkFJilmMg6C55CHLMRBnZKYblRGMAlxTFIc0yAItzXFdUJkwBjhTSQZhFgOXPXbvn8Zttq0G2XtJLM0CUK86Xktezv_KyNklK9oDnqlo2JjMv_Mt3pqLYS4V9bZK4pTrpfZ10LcK7CZTJ91zh3tfBB9O2-V66Z6K_QApPLQ68-3o9F_SOFvgZmQBVIthF8y8ncAAAD__w262Zo">