<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/57036>57036</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[clang-tidy] bugprone-unchecked-optional-access aborted with some AOSP source files
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
chih-hung
</td>
</tr>
</table>
<pre>
This clang-tidy crash is reproducible with the latest clang-tidy source tree.
I found it when testing revision r468909.
The clang-tidy stack dump points to bugprone-unchecked-optional-access check.
If that check is disabled in the attached test.sh, clang-tidy will not abort.
To reproduce:
(1) unzip the attached test.zip file
(2) modify TIDY in test.sh to point to an clang-tidy built
from r461044 or newer, when the bugprone-unchecked-optional-access
check was added.
Note that attached test.i.cc is preprocessed from one of several
AOSP source files that have this problem.
The clang-tidy aborted with stack dump:
```
1. <eof> parser at end of file
2. ASTMatcher: Processing 'bugprone-unchecked-optional-access' against:
FunctionDecl astc_codec::UnpackLogicalBlock : <device/generic/vulkan-cereal/third-party/astc-codec/src/decoder/logical_astc_block.cc:243:1, line:260:1>
--- Bound Nodes Begin ---
T - { RecordType : astc_codec::VoidExtentData
fun - { FunctionDecl astc_codec::UnpackLogicalBlock : <device/generic/vulkan-cereal/third-party/astc-codec/src/decoder/logical_astc_block.cc:243:1, line:260:1> }
--- Bound Nodes End ---
```
[test.zip](https://github.com/llvm/llvm-project/files/9295004/test.zip)
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzVVF2v2ygQ_TXOy8iRg50PP_ghaW6kSrvdqs2u1KcKw8RmLwELcNLsr9_BvmmS9qrtPm4UYRjgzDmHgdrKS7VvlQehuWnSoOQFhOO-BYo57JyVvVC1Rjir0EJoETQP6MP9Bm97JxCCQ5wm2TbJ1m_hYHsjQQU4t2gg7lCmIcST8soacMViVWbly_Kx3RP4PWrg4hlkf-ygs8oED8FC3TfEyWDaG9GieEaZ2i4QItcpFwI9KYnxK48DUeZhjEVJUnlOaoiZGcTwQFlaGkeGU98m7M09h7PSGowNwGvrwiNb-9UfTPL1_VTCVrOEldCbf1T3SpoYPSiN3-xhcc_RSnW4wP7t9tPAcaQVpQ8mxA439xTrXukwYgD9Ds4eo7uzrCjAOjB4RhdVjedAXH5u4Q1t9O3MPXApUT4Y8M4GHN19VKemQkSru8GeiEczAy1KCvYAHk_ouB5R1n98fH8toOiJHyFbforgA4ylAzv-qFKGw6EkQ4neyuZ2Kovs5T8MZ1OAJH-D9pDkT9Bx59GRBkAqWKJ3OxlGC9cf97_zQOocwcH7UVAs5YQtf8FJtgTecGV8-Mom-rqjHXHhFoUG7oP4LKxEEdfk6z9NRxJ-s40SXG-0JTkxN1GWdH2o2tiuQYNOCeqdev3MTSrQIVnKduSZkymJChcaReh0hGY772JLfRpTSez0mOHzkL-OeejkKBMrcmpnsWi0MrG4GVkXI_nTKCFNU9gMF_wdYXnYYEO1GqM3iXug0XIDHyifk_tLh4OKb8X-ZZV8-hLQhC0P_G7_oTcvCP9bs4j99nXDnqhHsVfL86Gdb64vRjLf0hvRhtD5qJztojIq-L6eCnuMDPXp-kmpLP9GEWg43Cn6lqycZ1kRRV8BWTkmmWA1WyyybFWsimIiq1yWecknQQWNFTG43TTi8Csv8ON9tEeE7275pHe6-s9ilPf9oGa-zPLFpK3yYomy5vNFNlsVyOdZLWWcQ0Fq57mcaF6j9lFFwhi9hTBAUJ-kTFTFMsayVVYyVmRFPmWZnBHealkcmBDlIikyPHKlp5HH1Lpm4qqBEpngaVIrH_xtktPL0BgcTIv4vA-tdZVoVZu2vWkmQ_JqIP8vT9Vnbg">