<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/142327>142327</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Behaviour of quotation marks in C++-style when running clang cpp with `-traditional-cpp`
</td>
</tr>
<tr>
<th>Labels</th>
<td>
clang
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
myzhang1029
</td>
</tr>
</table>
<pre>
Using the `-traditional-cpp` flag (or invoking as `cpp` directly), clang seems to be mis-parsing quotation marks inside C++-style comments.
Test code:
```c
// Test "double
// Try 'single
```
Command:
```
$CC -traditional-cpp -E test.c | cat
```
(piping through `cat` to separate `stderr` from `stdout`)
Output from `clang` (Homebrew clang version 20.1.6)
(omitting line number directives)
```
test.c:1:9: warning: missing terminating '"' character [-Winvalid-pp-token]
1 | // Test "double
| ^
test.c:2:8: warning: missing terminating ' character [-Winvalid-pp-token]
2 | // Try 'single
| ^
2 warnings generated.
// Test "double
// Try 'single
```
The `invalid-pp-token` warning seems to be bogus.
Output from GCC (clean output)
```
// Test "double
// Try 'single
```
Honestly, since this seems to be a small issue, I am personally fine with this becoming a wont fix or a `FIXME` inside `test/Preprocessor/traditional-cpp.c`.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJykVM2O4zYTfBr60rBAtyzZPujg8Y6_3cOH5JAguVJUS2KGPwpJeeI8fUBKk52fDbDAGgZsUd3s6urqEiGowRI1rHpg1aeNmOPofGPuf4_CDjuOp03runvza1B2gDgSsJpvoxedispZobdymljNoddiAIZH50HZm3tK4SKk6DWgU55k1HeGJ4YXkFrYAQKRCRAdtARGhe0kfC705-yiSAXACP8UQNmgOoILwweGD9sQ75pAOmPIxlAwfmb8_AuFCNJ1xMr0yGq-fGV6wCvDK-QQhti5udX06tzfgeEhlV6OX3IZP1-cMcJ27y7NufvLBd5zAdtHiBRiIYEdLiBF_JB2nNS0sOndPIyZIxETR9FBoEl4ETPPIXbkfWbXO7OeuDmFJhZz1z_NcZrjvwGZ1pTB8PjZGWo9Pa9c38iHxCjyYlfU6wV4dEbFmOBoZQnsbFry67DUjcIa96qBpTtWnnesPJ9YeYZn4a2yQ_prVFiUQt4oK_LFDA8MkeEB5Ci8kJE8sOph-5uyN6FVt52mbXRPZFn1ifEzAMAuk_dfU8svXz6senwNCll5Pn4fqO-Hg2_gvBPLCuMrpAURviAIMJClNNNuVeoPqDHpfFnCD2hr_lLxzVq1bphfVuS1WP53SR0dpSZhweUXH2f9Y0g_O0shr_wFgrKSII4qvEEnIBihNagQZkpxX0AYmMiHtFD6Dn1S5bOK45LbknQmews8OxuhV3-B8yASI9cvv___MdGwugWreZIFw-vPnibvJIXgPMPru5UtJKt5semasjuVJ7GhZnfYH4_lfl9Wm7HZY9_2-50UlTxIrPuOV2XV76q-bvmx76qNapBjxWuOvEReVsWhkrv61JVVS4hCINtzMkLpQuubKZwfNrndZrfHEg8bLVrSITsw4rLAiMmMfZMStu08BLbnWoUYvl4RVdTUPNAobsrNHlz_Ddd855jPI1nws80iWVwhWVam99u-vpm9bsYYp5AMME99UHGc20I6w_Ca4Kw_28m7P0gmvnN7geF17fDW4D8BAAD__9Xb988">