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

    <tr>
        <th>Summary</th>
        <td>
            Incorrect warning about 
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

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

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

<pre>
    This code
```
```
generates this warning on Clang8/C18:
```
solution.c:14:25: warning: pointer/integer type mismatch in conditional expression ('void *' and 'int') [-Wconditional-type-mismatch]
void *x(void*y){return y?y:(1,0);}
                        ^~ ~~~~~
```

However, the 0 in the comma expression is a valid null pointer constant, which is also the result of the comma expression, therefore I expect not a reported pointer/integer type mismatch.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyFUtGuoyAQ_Rp8ITUKUuuDD633NnvfN9ln1FHZIBjA9vbvd3Br9m7SzRocDhnmzOFAa_tH_X1Snna2B5K9kexMjtlzvFqOYMDJAJ6GWHaXzigzUmtoo6UZT4Rdm_xE-Plltbd6DcqatMMdeYGBCQw7TYSLVSaAQ544j-BoeCxAZ-VnGbqJKoNaTa8ijdQUPhcH3uOCEobdy5tVPcIzQipNhCUSYSSsokRcDj--lB8i92HnJuLtt8yd4xMpI0b4wHJSXhyE1Rn6IPz6iIdkp5ywJotJfiHls57-4yPinZTvFP-_xkvbt_jN3uEWzWjQbqBZPH0EnZ1n-fXseBWS3qRG3WbVencxWuWDjOdv6H1S0T_cqb3daLB61YHa4SXps6uDwTqgHzEDXaDGBuzlYLEuQP-_-0oTqPPjkbFKFGWV9DXvK17JJKigof4wnXUusu4PSbZ2DTRZna6nEBa_mXzFMaowrW2KInGh9W2fDouzP5EhCvB-BY9AlEKwZKqHXAJnnLVHAceCn7jgnRDZkFdtfuKSJ1q2oH2Nz4IwZuBONwrE-BQSVbOMsazKipwVBa_SbhCD4KIVWV5UHe9IkcEslU6jjtS6MXH1JqldR49JrXzwf5ISXR0NwNYO-eUaJutqY2cwBnynbLK1rzf5vwAE8hyr">