<div dir="ltr">So the preprocessed code looks like:<div>__m128i __a = ...</div><div><div>__extension__ ({</div><div>  __m128i __a = (__a);</div><div>  (__m128i)__builtin_ia32_pslldqi128(__a, (count)*8); })</div></div><div>
<br></div><div>... making __a uninitialized.  Is that correct?</div><div><br></div><div>Can you pre-process the source code and upload that to the PR?</div><div><br></div><div>I would say that the user is using a double-underscore name which is in the implementers namespace and they shouldn't do that.  We can probably go ahead and change the name in this instance just to fix the gcc test suite.</div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jan 3, 2014 at 4:16 PM, David Wiberg <span dir="ltr"><<a href="mailto:dwiberg@gmail.com" target="_blank">dwiberg@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi all,<br>
<br>
The file Headers/emmintrin.h contains macros where variables are<br>
created inside the macro definition which can cause name collisions<br>
and PR18323 shows an example where this has happened. Variables were<br>
added to macros in R143792 with comment "Fix vector macros to<br>
correctly check argument types. <rdar://problem/10261670>".<br>
<br>
One way of solving this particular PR is to revert R143792, but since<br>
that has led to other problems according to the commit message above<br>
I'm not sure if that's the right way and would appreciate other<br>
suggestions or comments.<br>
<br>
/ David<br>
_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@cs.uiuc.edu">cfe-dev@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev</a><br>
</blockquote></div><br></div>