<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Tue, Aug 25, 2015 at 10:27 AM, Abramo Bagnara <span dir="ltr"><<a href="mailto:abramo.bagnara@bugseng.com" target="_blank">abramo.bagnara@bugseng.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Comparing the result of InitListExpr::getSyntacticForm between r224986<br>
and r245836 I've discovered that integer to char implicit cast for<br>
integer literal 3 is no longer added to AST for C++ (while it is present<br>
in C).<br>
<br>
This is the source used to test:<br>
<br>
char v[10] = { 3 };<br>
<br>
Taken in account that:<br>
<br>
- implicit cast (and other conversions, constructor calls, etc.) are<br>
very important also for who need to visit the syntactic form (obvious in<br>
*both* C and C++)<br>
<br>
- to generate that for the syntactic form permit to increase the<br>
efficiency and the sharing when using designated range extensions (as<br>
the conversion chain don't need to be replicated for each entry)<br>
<br>
I think it is a regression. Am I missing something?</blockquote><div><br></div><div>Why do you expect this semantic information to appear in the syntactic form of the initializer? </div></div></div></div>