[cfe-dev] Clang problems with Solaris and SPARC

James Molloy james at jamesmolloy.co.uk
Wed May 25 08:03:03 PDT 2011


Hi Witold,

This appears to be a bug in Clang. The offending code is in
lib/Driver/Tools.cpp:

  if (FloatABI == "soft") {
    // Floating point operations and argument passing are soft.
    //
    // FIXME: This changes CPP defines, we need -target-soft-float.
    CmdArgs.push_back("-msoft-float");
    CmdArgs.push_back("soft");
    CmdArgs.push_back("-target-feature");
    CmdArgs.push_back("+soft-float");
  } else {


but –msoft-float is defined in CC1Options.td  as:

def msoft_float : Flag<"-msoft-float">,
  HelpText<"Use software floating point">;


i.e. it doesn’t take an argument. So Clang (as cc1) is interpreting the
extra ‘soft’ argument as an input file.

Fix is to remove the line “CmdArgs.push_back("soft");” as far as I can tell?

Cheers,

James
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20110525/73558162/attachment.html>


More information about the cfe-dev mailing list