<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/101839>101839</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[LLVM:] Optimization remarks are generated which aren't legal YAML
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
OfekShilon
</td>
</tr>
</table>
<pre>
As a toy example this cpp source:
```cpp
#include <vector>
void f() {
std::vector<float> buf(100);
float * p = nullptr;
}
```
When built with clang (tested back until clang15) with the switches
```
-fsave-optimization-record -O2 -std=c++20
```
Generartes the attached opt.yaml file, including the illegal document -
```
...
prologepilog
Name: StackSize
DebugLoc: { File: example.cpp, Line: 3, Column: 0 }
Function: _Z1fv
Args:
- NumStackBytes: '0'
- String: ' stack bytes in function '''
- Function: _Z1fv
- String: ''''
...
--- !Analysis
```
(the first `...` is part of the doc, and is expected to be followed by a `---` line).
You can verify e.g. by pasting the entire yaml contents into https://www.yamllint.com/
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx0VE2PozgQ_TXOpQQyJgnhwCHpTPbSM31oaVezl5UxBXjb2Mguksn8-pUhncm2ehACuT5elV89W4agO4tYsc2BbY4rOVHvfPXS4ttrr42zq9o112ofQAK5K-APOYwGgXodQI0jBDd5hSzfM35kfM-2fHnVON4sItdWmalBYPnTGRU5z_IvN-f8PTvdQMvEjokSWHFYrBCoibj5_j3pqTVOEsu_QD3F8IxzJkqWvycAzAHAxB5GYPkR7GTMSP4eworjhz6X5V89WqgnbQgumnpQRtoOmNgRBsIGaqneYLKkzeLKNrHVOZR6hHDRpHoMn2InbZBnTNxIetA_JWlnE4_K-QaSFwHJvM2jYuLAxEHwTzGW7x9o0UtPGOaqkkiqHhtwI6VXORhotUEmnmAhXNtujtPGYCcNNE5NA1qC5BH0Q6U0Te9sLs_onXEdjtq4bnF9k0OcOLySVG-v-icu5iPWU_fsVHTdHlYc4BSbyvfv0kmjMsQTPGs7m_O4eHJmGmxccrjP6DRZFdl6wPvn76w9L96978JddgAJfJuGuaHDlTAsOUwUnIniV8wreW27B8A5BkLMgzomgrbQ3gpH3-29Izw29dDN78E_YNz5TZIEmMj2Vppr0J9L5_0E7eIYW-0DAdvyCLHloAOM0hO4dp5y41RkUtomevDHiCoqlxzUCK0zxl2ikK8gI0aSJBHDxCGIMn0s991NoKSFM3rdXgHTLo1powz0rii0pD3CrDnlLKGlSBw56InGeSzixMTpcrnMwjTaUqrcEK0PlVZNlTdlXsoVVlkhRMG3RVms-mq32dVZsct22RqbJis3dcHrFkuxlrtm3TYrXQku1nzH86zIy02RKlUUZS55tuWSb9cbtuY4SG1SY85D6ny30iFMWGU82-XlysgaTZgvPSEsXmD2MiHiHeirmJTUUxfYmhsdKPyCIU1mvi2fn__8Gje6OcLLw9EGj4P0bwGkR-jmAxvHcOm16qPNMlEQLAfy-_7r82rypvo_a52mfqpvfMXCt18yevcvKmLiNLcbmDjd9nOuxH8BAAD___4KsWU">