<div dir="ltr">
<div class="gmail-post-text">

<p>Hi all,<br></p><p>I have a simple program which I can successfully compile with clang, using MinGW's C/C++ Library:</p>

<pre class="gmail-lang-c gmail-prettyprint gmail-prettyprinted"><code><span class="gmail-com">#include</span><span class="gmail-pln"> </span><span class="gmail-str"><stdio.h></span><span class="gmail-pln">
</span><span class="gmail-typ">int</span><span class="gmail-pln"> main</span><span class="gmail-pun">(</span><span class="gmail-typ">int</span><span class="gmail-pln"> argc</span><span class="gmail-pun">,</span><span class="gmail-pln"> </span><span class="gmail-kwd">char</span><span class="gmail-pln"> </span><span class="gmail-pun">**</span><span class="gmail-pln">argv</span><span class="gmail-pun">)</span><span class="gmail-pln"> </span><span class="gmail-pun">{</span><span class="gmail-pln"> printf</span><span class="gmail-pun">(</span><span class="gmail-str">"Hello world!\n"</span><span class="gmail-pun">);</span><span class="gmail-pln"> </span><span class="gmail-kwd">return</span><span class="gmail-pln"> </span><span class="gmail-lit">0</span><span class="gmail-pun">;</span><span class="gmail-pln"> </span><span class="gmail-pun">}</span></code></pre>

<p>I am able to compile this with mingw-gcc successfully:</p>

<pre class="gmail-lang-c gmail-prettyprint gmail-prettyprinted"><code><span class="gmail-pln"> $ gcc test</span><span class="gmail-pun">.</span><span class="gmail-pln">c </span><span class="gmail-pun">-</span><span class="gmail-pln">o test
 $ </span><span class="gmail-pun">./</span><span class="gmail-pln">test
 </span><span class="gmail-typ">Hello</span><span class="gmail-pln"> world</span><span class="gmail-pun">!</span></code></pre>

<p>I am also able to compile it successfully using clang+mingw:</p>

<pre class="gmail-lang-c gmail-prettyprint gmail-prettyprinted"><code><span class="gmail-pln"> $ clang test</span><span class="gmail-pun">.</span><span class="gmail-pln">c </span><span class="gmail-pun">-</span><span class="gmail-pln">o test </span><span class="gmail-pun">-</span><span class="gmail-pln">target
 $ </span><span class="gmail-pun">./</span><span class="gmail-pln">test
 </span><span class="gmail-typ">Hello</span><span class="gmail-pln"> world</span><span class="gmail-pun">!</span></code></pre>

<p>However, if I make a small change to my program (include float.h), it
 continues to compile with gcc but no longer compiles with clang:</p>

<pre class="gmail-lang-c gmail-prettyprint gmail-prettyprinted"><code><span class="gmail-com">#include</span><span class="gmail-pln"> </span><span class="gmail-str"><stdio.h></span><span class="gmail-pln">
</span><span class="gmail-com">#include</span><span class="gmail-pln"> </span><span class="gmail-str"><float.h></span><span class="gmail-pln">
</span><span class="gmail-typ">int</span><span class="gmail-pln"> main</span><span class="gmail-pun">(</span><span class="gmail-typ">int</span><span class="gmail-pln"> argc</span><span class="gmail-pun">,</span><span class="gmail-pln"> </span><span class="gmail-kwd">char</span><span class="gmail-pln"> </span><span class="gmail-pun">**</span><span class="gmail-pln">argv</span><span class="gmail-pun">)</span><span class="gmail-pln"> </span><span class="gmail-pun">{</span><span class="gmail-pln"> printf</span><span class="gmail-pun">(</span><span class="gmail-str">"Hello world!\n"</span><span class="gmail-pun">);</span><span class="gmail-pln"> </span><span class="gmail-kwd">return</span><span class="gmail-pln"> </span><span class="gmail-lit">0</span><span class="gmail-pun">;</span><span class="gmail-pln"> </span><span class="gmail-pun">}</span></code></pre>

<pre class="gmail-lang-c gmail-prettyprint gmail-prettyprinted"><code><span class="gmail-pln"> $ gcc test</span><span class="gmail-pun">.</span><span class="gmail-pln">c </span><span class="gmail-pun">-</span><span class="gmail-pln">o test
 $ </span><span class="gmail-pun">./</span><span class="gmail-pln">test
 </span><span class="gmail-typ">Hello</span><span class="gmail-pln"> world</span><span class="gmail-pun">!</span><span class="gmail-pln">

 $ clang test</span><span class="gmail-pun">.</span><span class="gmail-pln">c </span><span class="gmail-pun">-</span><span class="gmail-pln">o test </span><span class="gmail-pun">-</span><span class="gmail-pln">target x86_64</span><span class="gmail-pun">-</span><span class="gmail-pln">pc</span><span class="gmail-pun">-</span><span class="gmail-pln">windows</span><span class="gmail-pun">-</span><span class="gmail-pln">gnu
 </span><span class="gmail-typ">In</span><span class="gmail-pln"> file included from test</span><span class="gmail-pun">.</span><span class="gmail-pln">c</span><span class="gmail-pun">:</span><span class="gmail-lit">2</span><span class="gmail-pun">:</span><span class="gmail-pln">
 </span><span class="gmail-typ">In</span><span class="gmail-pln"> file included from C</span><span class="gmail-pun">:</span><span class="gmail-pln">\llvm\built\lib\clang\8</span><span class="gmail-pun">.</span><span class="gmail-lit">0.0</span><span class="gmail-pln">\include\float</span><span class="gmail-pun">.</span><span class="gmail-pln">h</span><span class="gmail-pun">:</span><span class="gmail-lit">45</span><span class="gmail-pun">:</span><span class="gmail-pln">
 C</span><span class="gmail-pun">:</span><span class="gmail-pln">\mingw64</span><span class="gmail-pun">-</span><span class="gmail-lit">8.1</span><span class="gmail-pun">.</span><span class="gmail-lit">0</span><span class="gmail-pln">\x</span><span class="gmail-lit">86</span><span class="gmail-pln">_64</span><span class="gmail-pun">-</span><span class="gmail-pln">w64</span><span class="gmail-pun">-</span><span class="gmail-pln">mingw32\include\float</span><span class="gmail-pun">.</span><span class="gmail-pln">h</span><span class="gmail-pun">:</span><span class="gmail-lit">28</span><span class="gmail-pun">:</span><span class="gmail-lit">15</span><span class="gmail-pun">:</span><span class="gmail-pln"> fatal error</span><span class="gmail-pun">:</span><span class="gmail-pln"> </span><span class="gmail-str">'float.h'</span><span class="gmail-pln"> file not found
 </span><span class="gmail-com">#include_next <float.h></span><span class="gmail-pln">
               </span><span class="gmail-pun">^~~~~~~~~</span><span class="gmail-pln">
 </span><span class="gmail-lit">1</span><span class="gmail-pln"> error generated</span><span class="gmail-pun">.</span></code></pre>

<p>Is there some configuration issue with clang or some missing command 
line argument? Googling around a bit, it appears that the order of paths
 when including float.h is important, but this is all supposed to be 
handled internally by the clang driver. <br></p><p>Thanks,</p><p>Harry Wagstaff<br></p>
    </div>

</div>