<div dir="ltr">I don't think this approach would handle things like:<div><br></div><div><div>int pr22217_foo;</div><div>int *b = &pr22217_foo;</div><div>extern int pr22217_foo __asm__("pr22217_bar");</div></div><div><br></div><div>With your patch, pr22217_foo gets emitted.</div><div>With gcc, pr22217_bar gets emitted.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jan 20, 2015 at 7:30 AM, Rafael Espíndola <span dir="ltr"><<a href="mailto:rafael.espindola@gmail.com" target="_blank">rafael.espindola@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Sorry, I attached an older version of the patch. This one has a<br>
slightly simpler test.<br>
<br>
On 20 January 2015 at 10:29, Rafael Espíndola<br>
<div class="HOEnZb"><div class="h5"><<a href="mailto:rafael.espindola@gmail.com">rafael.espindola@gmail.com</a>> wrote:<br>
> Currently clang will produce a @foo when given<br>
><br>
> int foo;<br>
> extern int foo __asm__("bar");<br>
><br>
> The attached patch makes it produce a @bar, which is what gcc produces.<br>
><br>
> I am confused by the output changes in the microsoft abi tests.<br>
> Hopefully someone more familiar with it can comment on why using a<br>
> more recent decl causes problems and has an idea of what should be<br>
> changed to accommodate it.<br>
><br>
> Cheers,<br>
> Rafael<br>
</div></div></blockquote></div><br></div>