<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/136090>136090</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[clang] Errors about .model files, when using --analyze on Windows
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
icebox246
</td>
</tr>
</table>
<pre>
# Overview
When compiling with `--analyze` flag on Windows, `.model` files are created for each defined function in code. These files are named `<function>.model`, so when a function has a particular name (e.g. `aux`), it can lead to creation of a file with illegal name (e.g. `aux.model`) - this in turn may cause errors as such files cannot be created normally. Example problematic names are: `aux`, `prn`.
# Suggested minimal test case
```c++
// problem.cpp
void aux() {}
```
Compilation:
```console
$ clang problem.cpp --analyze
error: error reading 'aux.model': no such file or directory
1 error generated.
```
Clang version:
```
$ clang --version
clang version 20.1.1
Target: x86_64-pc-windows-msvc
Thread model: posix
InstalledDir: C:\Program Files\LLVM\bin
```
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJxsVE-r4zYQ_zTKZbCR5dhODj54816gsKWFLt1jGcsTW0WWjCTnJf30RXJek6ULgoRk5vdPo0Hv1WiIWlZ9YdXbDtcwWdcqSb29iX296-1wb5ko4bcruauiD8a77xMZkHZelFZmhA8VJmA1zzI0qO__EKs5XDSOYA18V2awH56JUyzJZzuQTv8rTR7QEUhHGGiAi3VAKCcY6KJM_GE1MihrQEW2gXL4NpGnl1aDMw0Rl5Wnz2pWvv_HElm9hY-oF594E3pAWNAFJVeNLuEAEwfKxzzC4XpL3ccIoAJINKAJBwh2kxtR7CViKk1bAEprGlH_DOtFzxEyCJPy0VNYnYEZ7yBx9QTknHUe0INf5fRwKdEYG6B_xmSsm1Hrew7vN5wXTbA422uaMSiZ2FM2rOxenaT0F2fiHTDexSNK-GMdR_IRdVZGzaghkI92PT2Kar4dycSXeGLfmYnzJ2kul4Xx7mrVAJFLHKJH1nxhzdtr_wZ3SjOD2zX9iG-Ntzqxij1IjWZ8pYDnbPEuBRX9pS_gCIc4hkw0z6xFEwuMfWYJ1sGgHMlg3Z3xrni0j2TIxWTzn-hNOq7k_P8V_yA1yz6LeCdfm0DwvMgLxrtv6EYKUdXtUP9V77NFZh_b48hmf5WxZIpeYHNQdrBYr26Md78YH1BrGt5U8n2KUqrT786ODmc4x0lh1enr1z9_ZdWpV-ZV525oy-FYHnFHbdHs94dGNGWzm1p5EMdCFsdDI6uDuGBzKarLgLzssZaXqt-pVnBR8X3R8LoSRZMfjkIWhWxkKfcHqi9sz2lGpXOtr3Nu3bhT3q_UFmXNj3ynsSft02YRIqXChIhLxrWxIevX0bM918oH_4QIKui0jraO6g3eHw-jt2uA7X631xHHOr3t1at0CY8Zedk7u9Xpdgph8TGzNLqjCtPa59LOTJwj7eMjW5z9m2Rg4pxseCbODyfXVvwbAAD__4tJogA">