<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/62185>62185</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
References to static members treated differently
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang-include-cleaner
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
kadircet
</td>
</tr>
</table>
<pre>
we map all the member accesses to their type implicitly (to account for using-decls/bases etc.), but we don't do that for static members as they're not memberexprs, e.g:
```
struct Base { static int x; };
struct Foo : Base {};
Foo::^x;
```
we should get a reference to `Foo` not to declaration of `x`, which is in `Base`.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxcUtuSoywQfpr2pisW4jEXXkxmfh_gfwOEjrKLYkG7Sd5-CyeZ3Z0qC4vmO0D3p2K000rUQ32B-iNTO88-9D-VsUETZ6M3j_5GuKgNlXPIM-FCy0gBldYUI0Vkn8o2ID82QrtszmrL7oEgO_YJ5_eV8eoD7tGu08mQdhHkMKpEJ9Y5yDPIdxx3xhuh8SvIltEkYfXJjKzY6qd3RBWT5wNkGwhXz88Dum8hJiXKJyjfQHyAeK2NeH7HNnLYNeNFRUJoLy99uzLeobwgtB9QXv7BDt4jlG9fnL8hg_fJr3yD-r_7V_Wb5-d6I4yz353BiRgVBrpSoFVTaiQ0Ikk14ngUe0y9UkGx9Sv6azq_Jz35jrfZ6hltRLumcroVNCLPTF-ac3lWGfVF0xVt3Yhznc39WVambopzaTo5VmOju6rTmpSuW1lUtcpsL4UsRVW0RSe7os4rUYmmqKi6Khr1VUMlaFHW5c79WnIfpszGuFPfyKKrM6dGcvEIkpTaqXU62VW73dBJO1IrBZAyZSz0iX8a9ylCJZyNHP8osmVH_f-vnhzp-jZ7DqSYDBp7PVDsHtkeXD8zbzGNQA4gh8nyvI-59gvIIck_f6ct-B-kGeRw3D4F8XjA7wAAAP__T4j1iQ">