tag:help.appveyor.com,2012-11-13:/discussions/problems/27377-command-line-warning-d9002-ignoring-unknown-option-experimentalexternalAppVeyor: Discussion 2020-05-21T09:27:16Ztag:help.appveyor.com,2012-11-13:Comment/483518112020-05-21T09:27:00Z2020-05-21T09:27:02ZCommand line warning D9002 : ignoring unknown option '/experimental:external<div><p>This is in reference to this build:<br>
<a href="https://ci.appveyor.com/project/pygame/pygame/builds/33023654/job/pqxyjsr4fe4paj4j?fullLog=true#L375">https://ci.appveyor.com/project/pygame/pygame/builds/33023654/job/p...</a></p>
<p>Hello,</p>
<p>I am trying to make use of the /analyze flag to improve the CI coverage of the pygame project. One of the initial problems I identified when just using the flag is that you get a lot of noisy output related to the system headers. For example see here:</p>
<p><a href="https://ci.appveyor.com/project/pygame/pygame/builds/32982666/job/4oia0n3la6798ibm?fullLog=true#L374">https://ci.appveyor.com/project/pygame/pygame/builds/32982666/job/4...</a></p>
<p>...When I first enabled the /analyze compiler flag.</p>
<p>After a bit of internet searching I found this blog:</p>
<p><a href="https://devblogs.microsoft.com/cppblog/broken-warnings-theory/">https://devblogs.microsoft.com/cppblog/broken-warnings-theory/</a></p>
<p>detailing some new compiler flags added in what I believe is MSC Version 1913. To double check these were supported I got appveyor to print out the compiler version it uses which you can see in the log here:</p>
<p><a href="https://ci.appveyor.com/project/pygame/pygame/builds/33023654/job/pqxyjsr4fe4paj4j?fullLog=true#L163">https://ci.appveyor.com/project/pygame/pygame/builds/33023654/job/p...</a></p>
<p>for python 3.8 is 1916. So great! I should be able to use them. I tried the build locally and everything seems to work great so I upload it to appveyor. The weirdness is that while the flags are clearly being used in the appveyor build (no more external header spam, hooray), appveyor erroneously prints out these warnings:</p>
<p>cl : Command line warning D9002 : ignoring unknown option '/experimental:external'<br>
cl : Command line warning D9002 : ignoring unknown option '/external:W0'<br>
cl : Command line warning D9002 : ignoring unknown option '/external:env:CAExcludePath'</p>
<p>See:<br>
<a href="https://ci.appveyor.com/project/pygame/pygame/builds/33023654/job/pqxyjsr4fe4paj4j?fullLog=true#L376">https://ci.appveyor.com/project/pygame/pygame/builds/33023654/job/p...</a></p>
<p>This is despite those flags actually being accepted, as demonstrated by the analyzer output.</p>
<p>So, my question is - what am I doing wrong? Is there a special mode I have to enable for appveyor to make it acknowledge experimental flags? Can I at least suppress these three warnings (for each python c extension) somehow?</p>
<p>Cheers,</p></div>danintheshed