<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
This *is* highly desirable.</blockquote><div><br>Great - glad I didn't misunderstand that, then.<br> </div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
  Unfortunately, this breaks all the clients, like clang and dragonegg etc.</blockquote><div><br>Right, so it does. I did fix up clang with this patch (hmm, well I fixed it up on my machine but forgot that it's in a separate repository - so I've attached that patch to this email) & happy to checkout dragonegg & fix that too if it's practical.<br>
 </div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">  Can you tweak this so that the main APIs *take* a "const Type" but *return* a "Type"?<font color="#888888"><br>

</font></blockquote></div><br>Possibly - with a lot of const casting & I'll have to figure out which parts of llvm are the actual API used by clients, as opposed to just internal interfaces.<br>