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

    <tr>
        <th>Summary</th>
        <td>
            clang-format 17 segmentation fault
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            clang-format
      </td>
    </tr>

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

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

<pre>
    I encountered a segmentation fault from `clang-format 17.0.6`. This is the version included in Arch Linux.

```
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.      Program arguments: clang-format -i src/lib/asn1/asn1_obj.h
 #0 0x000076e9c1975933 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/usr/lib/libLLVM-17.so+0x775933)
 #1 0x000076e9c1972bcf llvm::sys::RunSignalHandlers() (/usr/lib/libLLVM-17.so+0x772bcf)
 #2 0x000076e9c1972d1d (/usr/lib/libLLVM-17.so+0x772d1d)
 #3 0x000076e9c0c5a770 (/usr/lib/libc.so.6+0x3c770)
 #4 0x000076e9cb8ebde1 (/usr/lib/libclang-cpp.so.17+0x24ebde1)
 #5 0x000076e9cb82d7f0 (/usr/lib/libclang-cpp.so.17+0x242d7f0)
 #6 0x000076e9cb82d9c4 (/usr/lib/libclang-cpp.so.17+0x242d9c4)
 #7 0x000076e9cb849afa clang::format::internal::reformat(clang::format::FormatStyle const&, llvm::StringRef, llvm::ArrayRef<clang::tooling::Range>, unsigned int, unsigned int, unsigned int, llvm::StringRef, clang::format::FormattingAttemptStatus*) (/usr/lib/libclang-cpp.so.17+0x2449afa)
 #8 0x000076e9cb84cf70 clang::format::reformat(clang::format::FormatStyle const&, llvm::StringRef, llvm::ArrayRef<clang::tooling::Range>, llvm::StringRef, clang::format::FormattingAttemptStatus*) (/usr/lib/libclang-cpp.so.17+0x244cf70)
 #9 0x0000569d63ffb088 (/usr/bin/clang-format+0xe088)
#10 0x0000569d63ff4079 (/usr/bin/clang-format+0x7079)
#11 0x000076e9c0c43cd0 (/usr/lib/libc.so.6+0x25cd0)
#12 0x000076e9c0c43d8a __libc_start_main (/usr/lib/libc.so.6+0x25d8a)
#13 0x0000569d63ff4535 (/usr/bin/clang-format+0x753)
```

To reproduce:

1) Checkout `76f78e108ac710822862203d879d825dbd805b1c` from https://github.com/randombit/botan

2) Apply the following patch:

```
diff --git a/.clang-format b/.clang-format
index 5c887c301..712fd0e7f 100644
--- a/.clang-format
+++ b/.clang-format
@@ -33,6 +33,9 @@ IncludeCategories:

 AttributeMacros: ['BOTAN_FUNC_ISA', 'BOTAN_FUNC_ISA_INLINE', 'BOTAN_FORCE_INLINE']

+Macros:
+ - BOTAN_PUBLIC_API(x,y)=
+
 BinPackArguments: false
 BreakStringLiterals: false
 AllowAllArgumentsOnNextLine: true
```

3) Run `clang-format -i src/lib/asn1/asn1_obj.h`

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzMl11v4ywWxz8NuUGxMH4BX-TCSRttpEynajt7G2HADlMHIsAz7bdfYadp7DYz3b3ZJ4r8AuZ3_hwfDsfMOdVoKRcgW4LsZsY6vzd2YZkW5lApP6uMeF1soNTcdNpLKwVk0MnmILVnXhkNa9a1HtbWHCDIEW-Zbua1sQfmYUwiFOUgRxF82isHlYN-L-EvaV0YqTRvOyEFVBqWlu_hVunuJQLoBqDydMzR6d_f3m9vy8db6LrqoDxksOoaaOXRWA-9gXvvjw4kJcBrgNeN8vuuirg5ALxu219vp_nRmp-Se4DXyrlOOoDXkGnxJqeXyC1ze1gx_uwt4_Kk6dEz_gxFdzgGK30TimD_u7emsewAmW264JugA46cMVfQWR5EqArgNXM6Pp12pvoZ7QceBDhBEL0ghBDJZcHjgmRFksB-BkkJktK9uuHi3irte01PQSTA9P0hy37vjPNWsgPAOcArqLQHuIAAU4DXnbNnJa2qttt_f5vHJHIG4CV6Ib1JgIt3TfFEE654_Zmmh04_qkaz9l9Mi1Za19v7qtlAHZnFU7MiFl9liViMWMklC_GMEYI-Z_HImSjvOQknBI0w6SWmorISMr6C6V8_Px4DLiY9D6f9gBExGxOxIPU1YZ8S-wEjYj4lFjz974gFT0dEMiamBavZEN_Dex-CfLhWIVFo1p4iUZ76ML3y_Lq_fvSvrYTcaOdPEfseXo_eKt08yHrcXFrLXkNrsrpAe2Na9XbzwHQjQXIbBna6T3ZiWAp_v79i_4-z8Eo3pffycAwr03cO4PJq_H_u_N63I-fTifN5TdA1Gf8cd_-_3Be8M3JfcXJflhciT-q6QpSOiJXSAK8vs3XPkojSMyjkQDQBpYgUXwERRIoRKB6nojTh4u-pCGdcoBEGTzGCMrjbhWE755n1uwNT-gtgQdkInEwnmiXZlyaave8ak617OD6ZsF9bIzouz3vocAw5Ea72kj-bzodSguQ1oTJGlHESI4oxzTFGiaCkEBRnohIUZVXMQY6G8uMP-_-5oAnajWf60jIOlsvjsX3t9_7atK35rXQDj8zz_UTmZFpC1TWcz5tQjgC8jkZbfjVtGcYoLeQLzDilhCcojiIS41ogSWoYI5Sn6fDYfD7_yHx7R8vhf80ESBFIEZyHXXyVQ4CX_VUBTx2bodZZMS8bY5V0k1nC0nurqs7Lb4xb01czoUTEZPn9qbzbrX_crXabxxJgEtb0h_bd5m67ubv90P39YXV70ZfdjFyLl2dr5xY4h8PY-x_L7Wa1K-83ANMXgFevIdSSm3ePDMqXSt8z_lxeFmI1a51867eSPQ8Zaau8tKz98EgZAqBs2zPju76TL36rdAha6G0n_xDjYQnAh05_KIf_WgG-cWZikYgiKdhMLmIS4wSF0J_tFwkhkkuSCplSnGVYcskFSmmOa0oqLGZqgRFOUYoyVMQE4QjRRNa5jLMkFxzjBKRIHphqo5CdI2ObWV8EL2io-WYtq2Tr-o8BjMerG4fPA7voK-iqaxxIUaucd-8gr3wrF5MPgE--FWadbRf_e63eK_1PAAAA__9UDbha">