<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/60270>60270</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
clang 15 broke ABI without bumping ABI compatibility SOVERSION
</td>
</tr>
<tr>
<th>Labels</th>
<td>
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
bonzini
</td>
</tr>
</table>
<pre>
clang 15 changed the value of `CXCursor_TranslationUnit` from 300 to 350 in commit bb83f8e70bd1d56152f02307adacd718cd67e312.
This is an ABI breakage; code compiled with new headers will fail to run with old libraries and vice versa. Therefore SOVERSION 13 should _not_ be allowed for clang 15 even if `CLANG_FORCE_MATCHING_LIBCLANG_SOVERSION=OFF`.
In addition, the exact semantics of `CINDEX_VERSION_MAJOR` are unclear:
* in my opinion it should only be for backwards-compatible source/**API** (not ABI) changes, in which case leaving it to 0 is is fine but the documentation should be updated
* if ABI changes should also affect `CINDEX_VERSION_MAJOR`, then it should be bumped to 1
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx8U81u4zYQfhrqMohBUZZ_Djo4Trx1sRsX2bTYmzEkRxYbijRIyq779AVle5Ne9iIJwvCb748Yozk4oobVj6x-KnBInQ-N9O5f40whvb40yqI7QFmD6tAdSEPqCE5oBwLfApvx9Y_1EKIP-7eALlpMxrs_nUlsxqENvoeKc0geqpqDcaB835sEUi6qdkFzLnWp61lZi5aLis9Ro9LzcqH0bE5VKSaMPzG-uj7fOhPBREAHq8ctyED4jgdi1SMoryljH40lDWeTOnB0ho5QU4hwNtZCi8ZmJmFw1wlvNVgjAwZDGVXDySiCE4WIE3jrKFDrA8H33V_Pr9-3uxcoK4idH6yGvfNpD5IArfVn0tD6AD_NohM5MFd_vq5evuw3u9f18_7b6m392_bly_7r9vH6_yc0q552mw2b8f8p3jpArU32lIn16D39gypBpB5dMireU9i-PD3_2N_A9t9Wv-9ecwIYCAanLGFg1eozNBOrnEd_AX80zngHJt3FeWcvWVvWJFG9nzHo-JDtxWSkJYh-CIqY2DCRgVZ_bK8fwMTC-ZTjYWJ560zM1I2Dc2dUBwojgSU8GXfIK5MHDtdcW-MI5JBGndqroSeXxkLdiUmC4agxkf4koh3bcNt1n0QbPWDbkkq_8Odm6mftMlPoj7npHspCN5VeVkssqCln82m9rOrltOiaOaGqsZQt1pwvKsKFpCWvW7ksK6FEXZhG5EaXYip4XZXTyVIoVdIcaUFtNW0rNuXUo7ETa0_9xIdDYWIcqJlxMeeFRUk23m9maPLQgxwOkU25NTHFj2PJJEsfF1UG_06jJbnkfkijnuz2aNMtRGNNunw0uxiCbbqUjjHXJOe6OZjUDXKifM_EJi-7vR6Owf9NKjGxGQlHJjYj5_8CAAD__8ksY8E">