<div dir="ltr">Special-casing ElaboratedType is not the right fix (this is a general problem with any kind of type sugar). Fixed by switching from dyn_cast to Type::getAs in r192671.</div><div class="gmail_extra"><br><br><div class="gmail_quote">
On Wed, Oct 9, 2013 at 9:58 PM, Justin Bogner <span dir="ltr"><<a href="mailto:mail@justinbogner.com" target="_blank">mail@justinbogner.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
In getIntWidth we special case enums and boolean types, but this<br>
handling can be defeated if the type is hidden inside an<br>
ElaboratedType. Notably, scoped enum bools in a namespace that are<br>
referred to by a fully qualified name skip past both checks.<br>
<br>
This then causes an assert when something of that type is involved in an<br>
implicit cast.<br>
<br>
We can avoid this by explicitly stripping the elaborated type.<br>
<br>
Okay to commit?<br>
<br>
<br>_______________________________________________<br>
cfe-commits mailing list<br>
<a href="mailto:cfe-commits@cs.uiuc.edu">cfe-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><br>
<br></blockquote></div><br></div>