<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/67176>67176</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
relative vtables doesn't work when TU's are compiled with different default visibilities
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
abrachet
</td>
</tr>
</table>
<pre>
When -fvisibility=default, RV will set the vtable to be called `vtable.local`, the comdat group name stays the same at just `vtable`. In a -fvisibility=hidden compile, RV will not bother creating a local alias for the vtable so it will keep the vtable called just `vtable`, likewise the comdat group is still called `vtable`. This is invalid, comdat groups must have the same linkage abi. Perhaps we could fix this by calling the comdat group `vtable.local`
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxkUs1um0AQfprlMgoiC4Zw4NA2stRbVaXteYABJl6z1s5g6revliS1FZ8QO_v97XwowuNM1JjdV7N7TnDRyYcG24DdRJq0vr80fyaa4WE4s3DLjvVi8ueeBlycGvsNfv6GlZ0DIQWdCM6KrSNQDy1Bh85RD6bM3o5T5zt0pswiMt7u_LFHhTH45QQzHglE8SLbTOIvKrwuolcKU2YpfJ8BP3uauO9pjowndnRrbfYKrdeJAnSBUHkeAWGzAugYBQYfbs2LB9Y37IHodDt6T3TnKeo5PtDKQvfJWEA00n1-kC3Ny8QSr_B8Rsd9pLpFCxyj2oRnur6L4_mAIwG2nMIPChOeBNYou7geBv4LGlnbyyYZE9-Zut9K0jd5X-c1JtQ8lvWuyKq6zpKpqXdPGZbVYO2uHgossqpr2_KpHHZlQdZ2CTc2s3lWW_v4lNdFnVJW2mzIB7R5VXRdYYqMjsgude58TH0YExZZqCmrx6pMHLbkZKuhtTOtsA2NtbGVoYmYh3YZxRSZY1G5siiroyaQQ-Xzx5YEek8yG1sprD4cYI0dfvllbCWAgT5K0sPKOkHPw0CBZoX3XsP_YjFJsgTXTKonMfkXY_fG7kfWaWnTzh-N3Ucr75-HU_Cv1Kmx-y2AGLvfAv4LAAD__526KGs">