<div dir="ltr">On Tue, Nov 5, 2013 at 4:44 PM, Rui Ueyama <span dir="ltr"><<a href="mailto:ruiu@google.com" target="_blank">ruiu@google.com</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Author: ruiu<br>
Date: Tue Nov  5 18:44:10 2013<br>
New Revision: 194114<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=194114&view=rev" target="_blank">http://llvm.org/viewvc/llvm-project?rev=194114&view=rev</a><br>
Log:<br>
[PECOFF] Ignore /disallowlib.<br>
<br>
msvcrt.lib contains "/disallowlib" command line option in its .drectve section.<br>
I couldn't spot any documentation for the option. Ignore it for now so that we<br>
can link the library without error.<br></blockquote><div><br></div><div>The directive simply indicates that if the library or libraries indicated are specified, silently drop them from the link.  It is used in cases where multiple providers provide the symbol and one is preferred (consider MSVCRT, MSVCRTD, CMT, CMTD).</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Modified:<br>
    lld/trunk/lib/Driver/WinLinkOptions.td<br>
    lld/trunk/unittests/DriverTests/WinLinkDriverTest.cpp<br>
<br>
Modified: lld/trunk/lib/Driver/WinLinkOptions.td<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/lib/Driver/WinLinkOptions.td?rev=194114&r1=194113&r2=194114&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/lib/Driver/WinLinkOptions.td?rev=194114&r1=194113&r2=194114&view=diff</a><br>

==============================================================================<br>
--- lld/trunk/lib/Driver/WinLinkOptions.td (original)<br>
+++ lld/trunk/lib/Driver/WinLinkOptions.td Tue Nov  5 18:44:10 2013<br>
@@ -92,6 +92,7 @@ def verbose : F<"verbose">;<br>
<br>
 def delay : QF<"delay">;<br>
 def delayload : QF<"delayload">;<br>
+def disallowlib : QF<"disallowlib">;<br>
 def errorreport : QF<"errorreport">;<br>
 def pdb : QF<"pdb">;<br>
 def pdbaltpath : QF<"pdbaltpath">;<br>
<br>
Modified: lld/trunk/unittests/DriverTests/WinLinkDriverTest.cpp<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/lld/trunk/unittests/DriverTests/WinLinkDriverTest.cpp?rev=194114&r1=194113&r2=194114&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/lld/trunk/unittests/DriverTests/WinLinkDriverTest.cpp?rev=194114&r1=194113&r2=194114&view=diff</a><br>

==============================================================================<br>
--- lld/trunk/unittests/DriverTests/WinLinkDriverTest.cpp (original)<br>
+++ lld/trunk/unittests/DriverTests/WinLinkDriverTest.cpp Tue Nov  5 18:44:10 2013<br>
@@ -463,9 +463,9 @@ TEST_F(WinLinkParserTest, Ignore) {<br>
   // compatibility with link.exe.<br>
   EXPECT_TRUE(parse("link.exe", "/nologo", "/errorreport:prompt",<br>
                     "/incremental", "/incremental:no", "/delay:unload",<br>
-                    "/delayload:user32", "/pdb:foo", "/pdbaltpath:bar",<br>
-                    "/verbose", "/verbose:icf", "/wx", "/wx:no", "a.obj",<br>
-                    nullptr));<br>
+                    "/disallowlib:foo", "/delayload:user32", "/pdb:foo",<br>
+                    "/pdbaltpath:bar", "/verbose", "/verbose:icf", "/wx",<br>
+                    "/wx:no", "a.obj", nullptr));<br>
   EXPECT_EQ("", errorMessage());<br>
   EXPECT_EQ(1, inputFileCount());<br>
   EXPECT_EQ("a.obj", inputFile(0));<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>Saleem Abdulrasool<br>compnerd (at) compnerd (dot) org
</div></div>