<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Jan 10, 2014 at 8:32 AM, JB FELDMAN <span dir="ltr"><<a href="mailto:jb.feldman@kyrus-tech.com" target="_blank">jb.feldman@kyrus-tech.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><br>
Hey guys, I'm new to the community and I just posted into the clang<br>
channel on IRC, but I wanted to write to this list as well. My company<br>
is having some issues with Clang on Windows, and instead of just bugging<br>
you guys about it, they asked me to see what I could do. I was hoping I<br>
could get someone to point me in the right direction though.<br></blockquote><div><br></div><div>Sure!  I'd just mention that Windows support in general in Clang and LLVM is weak in some areas and strong in others.  In particular, C++ ABI compatibility with MSVC isn't there yet.  We can't actually self-host Clang with that ABI yet, but it should happen in the next month.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
The issue I'm looking at has been previously reported here:<br>
<a href="https://github.com/ishani/clang-msvc/issues/1" target="_blank">https://github.com/ishani/clang-msvc/issues/1</a></blockquote><div><br></div><div>This looks like a git clone that hasn't been updated in almost a year.  There's been a lot of recent development in upstream Clang, so I'd try that.  We have pre-built Windows binaries here: <a href="http://llvm.org/builds/">http://llvm.org/builds/</a></div>
<div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
So far I've tracked it down to the following: The sizeof operator<br>
doesn't like the fact that it is being asked the sizeof a static,<br>
uninstantiated, template type. It looks like a while back sizeof was<br>
fixed to allow this kind of operation<br>
(<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2253.html" target="_blank">http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2253.html</a>),<br>
which it looks like was implemented in clang 3.1. However the fact that<br>
the line in atlstr.h uses a template seems to be breaking thing.<br></blockquote><div><br></div><div>This probably had something to do with our implementation of delayed template parsing.  Please report it at <a href="http://llvm.org/bugs">http://llvm.org/bugs</a> if it still reproduces.  We haven't been testing ATL headers thoroughly enough, since Clang and LLVM don't use them.</div>
<div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
I'm going to start poking around, but I was hoping someone might have an<br>
idea of where to point me. My intention is to fix the issue and submit<br>
the patch back to llvm/clang<br>
<br>
By the way, I think I have confirmed my suspicions that the problem is<br>
what I think, because I changed atlstr.h to:<br>
const ChTraits::XCHAR xhcarforsize = 'a';<br>
if (memcmp(pMatch, pCharSet, nCharSetLen*sizeof(xcharforsize)) == 0)<br>
...<br>
<br>
and everything worked (That's not true, I just got past that issue and<br>
to the next one)<br>
<br>
I know that unfettered Windows support is a goal for you guys, hopefully<br>
I can help.<br>
Thanks,<br>
JB<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></div>