<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">Updated the "For Windows Users" section
with helpful hints, OK to commit?<br>
<br>
</div>
<blockquote
cite="mid:FA0D7B98-DE03-4AA3-93E8-31B5EE056C60@apple.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
Anton,
<div class=""><br class="">
</div>
<div class="">Thanks for the investigation.</div>
<div class=""><br class="">
</div>
<div class="">Please, send the proposed wording as a patch. (Not
sure if it would be possible to describe the symptoms of the
problem.)</div>
<div class="">
<div class=""><br class="">
</div>
<div class="">Anna.</div>
<div class="">
<div>
<blockquote type="cite" class="">
<div class="">On Oct 18, 2014, at 1:56 AM, Anton Yartsev
<<a moz-do-not-send="true"
href="mailto:anton.yartsev@gmail.com" class="">anton.yartsev@gmail.com</a>>
wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type" class="">
<div text="#000000" bgcolor="#FFFFFF" class="">
<div class="moz-cite-prefix">As I was explained in the
MSYS community the MSYS utils are dependent on the
MSYS runtime and their usage from cmd.exe is
unsupported. "You are welcome to try it, but if you
observe odd behaviour, such as here, then you are
out of luck".<br class="">
<br class="">
I performed several tests and found out that proper
processing is performed with either running
scan-build with MSYS make in the following way:<br
class="">
scan-build ... sh -c "make"<br class="">
or with using mingw32-make and removal of MSYS from
PATH (otherwise mingw32-make tries to use MSYS
utils).<br class="">
<br class="">
from the MinGW FAQ:<br class="">
"What's the difference between make and
mingw32-make?<br class="">
The "native" (i.e.: MSVCRT dependent) port of make
is lacking in some functionality and has modified
functionality due to the lack of POSIX on Win32.
There also exists a version of make in the MSYS
distribution that is dependent on the MSYS runtime.
This port operates more as make was intended to
operate and gives less headaches during execution.
Based on this, the MinGW
developers/maintainers/packagers decided it would be
best to rename the native version so that both the
"native" version and the MSYS version could be
present at the same time without file name
collision."<br class="">
<br class="">
Is it OK to add the recommendations to the <a
moz-do-not-send="true"
href="http://clang-analyzer.llvm.org/scan-build.html#scanbuild_forwindowsusers"
class="">scan-build: running the analyzer from the
command line</a>, "For Windows Users" section?<br
class="">
<br class="">
</div>
<blockquote cite="mid:543FAD82.1010004@Gmail.com"
type="cite" class="">Sorry, that's not a solution. <br
class="">
<br class="">
<blockquote type="cite" class="">The goal of the
patch is to pass unmodified arguments to compilers
as they were written in the makefile. Arguments
taken from @ARGV may be modified by the system and
Perl, at least quotes and backslash sequences are
processed. Using this arguments may cause compiler
errors. Sometimes system+Perl corrupt arguments
completely, for example, using perl from MSYS 1.0
on Windows I got: <br class="">
Line from makefile: <br class="">
$(CXX) -DMACRO=\"string\" file.cpp "asd dff
ghh" -o file.exe <br class="">
<br class="">
arguments red from @ARGV by c++-analyzer: <br
class="">
"-DMACRO=\string\" file.cpp -o file.exe" <br
class="">
<br class="">
Please review! <br class="">
<br class="">
</blockquote>
</blockquote>
<br class="">
<pre class="moz-signature" cols="72">--
Anton</pre>
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</div>
</blockquote>
<pre class="moz-signature" cols="72">--
Anton</pre>
</body>
</html>