<div dir="ltr">I don't think this approach is working very well.<div><br></div><div>The problem is that I'm trying to keep the un-decayed array types in TSI, and these get propagated into many places they shouldn't.  My patch breaks tests like:</div>
<div><br></div><div><div>void t22(void (*take_array(int array[1]))) {</div><div>  int arr[1];</div><div>  take_array(arr); // error: array initializer must be an initializer list</div><div>}</div><div><br></div><div style>
The problem is that GetFullTypeForDeclarator() returns a TypeSourceInfo, so all I have to do is nest the un-decayed type deep inside that TSI.  Then it becomes hard to find and adjust parameter types without doing a full traversal.</div>
<div style><br></div></div><div style>The full traversal seems silly.  Maybe I should be changing the consumers of the function types to handle array types instead?</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">
On Sat, Jun 8, 2013 at 1:31 PM, Reid Kleckner <span dir="ltr"><<a href="mailto:rnk@google.com" target="_blank">rnk@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
  Closed by commit rL183614 (authored by @rnk).<br>
<br>
CHANGED PRIOR TO COMMIT<br>
  <a href="http://llvm-reviews.chandlerc.com/D883?vs=2171&id=2321#toc" target="_blank">http://llvm-reviews.chandlerc.com/D883?vs=2171&id=2321#toc</a><br>
<br>
<a href="http://llvm-reviews.chandlerc.com/D883" target="_blank">http://llvm-reviews.chandlerc.com/D883</a><br>
<br>
COMMIT<br>
  <a href="http://llvm-reviews.chandlerc.com/rL183614" target="_blank">http://llvm-reviews.chandlerc.com/rL183614</a><br>
</blockquote></div><br></div>