<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Wed, May 28, 2014 at 6:09 AM, Alexander Musman <span dir="ltr"><<a href="mailto:alexander.musman@gmail.com" target="_blank">alexander.musman@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Richard,<br>
<br>
Yes, I think that assuming that the variable is random access iterator would work. It will still need to generate std::difference on them,</blockquote><div><br></div><div>I don't think even that's necessary: the random access iterator requirements let you use `it2 - it2`. (And that's just as well; it'd be weird for a language feature to require `std::difference` to be available -- not that there aren't other language features like that, but still...)</div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">but we can check that later, during building expressions for iteration space (that will be used for CodeGen). This also has an advantage that user may use his iterators without deriving from std classes.<br>

I've removed corresponding checks and fixed processing `break` statements.<br>
<br>
Thanks,<br>
Alexander<br>
<br>
<a href="http://reviews.llvm.org/D3778" target="_blank">http://reviews.llvm.org/D3778</a><br>
<br>
Files:<br>
  include/clang/Basic/DiagnosticSemaKinds.td<br>
  include/clang/Sema/Scope.h<br>
  include/clang/Sema/Sema.h<br>
  lib/Parse/ParseOpenMP.cpp<br>
  lib/Sema/Scope.cpp<br>
  lib/Sema/SemaOpenMP.cpp<br>
  lib/Sema/SemaStmt.cpp<br>
  test/OpenMP/simd_loop_messages.cpp<br>
  test/OpenMP/simd_misc_messages.c<br>
</blockquote></div><br></div></div>