<div dir="ltr">I am not sure.<div>Adding lseek64 to the white-list should be fine as well.</div><div><br></div><div>Problem is that some libc stuff is intercepted by sanitizers. Linking could work but intercepted function will crash when it's called from symblizer and it would need custom implementation. So white-list allows us to explicitly make decision on every new dependency.</div><div><br></div><div>Still linking only test could be a good idea. I can imagine that in real life new functions will not be carefully investigated and will be just added to the white list. And only then when we start crashing in symbolizer we will consider custom implementation.</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, Dec 12, 2016 at 10:10 AM Peter Collingbourne <<a href="mailto:peter@pcc.me.uk">peter@pcc.me.uk</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="gmail_msg">Should be fixed by r289449.<div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">By the way, it seems really weird that changes to lib/Support should require changes to some other random part of the project. Should this script be checking for the desired property more directly, e.g. by linking a test program and testing that the link succeeds?</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">Peter</div></div><div class="gmail_extra gmail_msg"></div><div class="gmail_extra gmail_msg"><br class="gmail_msg"><div class="gmail_quote gmail_msg">On Mon, Dec 12, 2016 at 8:31 AM, Mike Aizatsky <span dir="ltr" class="gmail_msg"><<a href="mailto:aizatsky@google.com" class="gmail_msg" target="_blank">aizatsky@google.com</a>></span> wrote:<br class="gmail_msg"><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="gmail_msg">Peter,<div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">I think this breaks many bots:</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg"><a href="http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux/builds/368" class="gmail_msg" target="_blank">http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux/builds/368</a><br class="gmail_msg"></div></div><div class="m_5895939417278561924HOEnZb gmail_msg"><div class="m_5895939417278561924h5 gmail_msg"><br class="gmail_msg"><div class="gmail_quote gmail_msg"><div dir="ltr" class="gmail_msg">On Thu, Dec 8, 2016 at 9:07 PM Peter Collingbourne via llvm-commits <<a href="mailto:llvm-commits@lists.llvm.org" class="gmail_msg" target="_blank">llvm-commits@lists.llvm.org</a>> wrote:<br class="gmail_msg"></div><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: pcc<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
Date: Thu Dec  8 22:57:19 2016<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
New Revision: 289184<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=289184&view=rev" rel="noreferrer" class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg" target="_blank">http://llvm.org/viewvc/llvm-project?rev=289184&view=rev</a><br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
Log:<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
Support: Use a 64-bit seek in raw_fd_ostream::seek().<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
Modified:<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
    llvm/trunk/lib/Support/raw_ostream.cpp<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
Modified: llvm/trunk/lib/Support/raw_ostream.cpp<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
URL: <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Support/raw_ostream.cpp?rev=289184&r1=289183&r2=289184&view=diff" rel="noreferrer" class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Support/raw_ostream.cpp?rev=289184&r1=289183&r2=289184&view=diff</a><br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
==============================================================================<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
--- llvm/trunk/lib/Support/raw_ostream.cpp (original)<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
+++ llvm/trunk/lib/Support/raw_ostream.cpp Thu Dec  8 22:57:19 2016<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
@@ -598,7 +598,11 @@ void raw_fd_ostream::close() {<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
 uint64_t raw_fd_ostream::seek(uint64_t off) {<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
   assert(SupportsSeeking && "Stream does not support seeking!");<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
   flush();<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
-  pos = ::lseek(FD, off, SEEK_SET);<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
+#ifdef LLVM_ON_WIN32<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
+  pos = ::_lseeki64(FD, off, SEEK_SET);<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
+#else<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
+  pos = ::lseek64(FD, off, SEEK_SET);<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
+#endif<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
   if (pos == (uint64_t)-1)<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
     error_detected();<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
   return pos;<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
_______________________________________________<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
llvm-commits mailing list<br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
<a href="mailto:llvm-commits@lists.llvm.org" class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg" target="_blank">llvm-commits@lists.llvm.org</a><br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br class="m_5895939417278561924m_-4131136173857620664gmail_msg gmail_msg">
</blockquote></div></div></div><span class="m_5895939417278561924HOEnZb gmail_msg"><font color="#888888" class="gmail_msg"><div dir="ltr" class="gmail_msg">-- <br class="gmail_msg"></div><div data-smartmail="gmail_signature" class="gmail_msg"><div dir="ltr" class="gmail_msg">Mike<br class="gmail_msg">Sent from phone</div></div>
</font></span></blockquote></div><br class="gmail_msg"><br clear="all" class="gmail_msg"><div class="gmail_msg"><br class="gmail_msg"></div></div><div class="gmail_extra gmail_msg">-- <br class="gmail_msg"><div class="m_5895939417278561924gmail_signature gmail_msg" data-smartmail="gmail_signature"><div dir="ltr" class="gmail_msg">-- <div class="gmail_msg">Peter</div></div></div>
</div></blockquote></div>