<div>Hi Witold,</div><div><br></div><div>This appears to be a bug in Clang. The offending code is in lib/Driver/Tools.cpp:</div><div><br></div><blockquote class="webkit-indent-blockquote" style="margin: 0 0 0 40px; border: none; padding: 0px;">
<div>  if (FloatABI == "soft") {</div><div>    // Floating point operations and argument passing are soft.</div><div>    //</div><div>    // FIXME: This changes CPP defines, we need -target-soft-float.</div><div>
    CmdArgs.push_back("-msoft-float");</div><div>    CmdArgs.push_back("soft");</div><div>    CmdArgs.push_back("-target-feature");</div><div>    CmdArgs.push_back("+soft-float");</div>
<div>  } else {</div></blockquote><div><br></div><div>but –msoft-float is defined in CC1Options.td  as:</div><div><br></div><blockquote class="webkit-indent-blockquote" style="margin: 0 0 0 40px; border: none; padding: 0px;">
<div>def msoft_float : Flag<"-msoft-float">,</div><div>  HelpText<"Use software floating point">;</div></blockquote><div><br></div><div>i.e. it doesn’t take an argument. So Clang (as cc1) is interpreting the extra ‘soft’ argument as an input file.</div>
<div><br></div><div>Fix is to remove the line “CmdArgs.push_back("soft");” as far as I can tell?</div><div><br></div><div>Cheers,</div><div><br></div><div>James</div><div><br></div>