r184308 - [Driver] Don't forward source file input args to gcc
Charles Davis
cdavis5x at gmail.com
Wed Jun 19 10:19:38 PDT 2013
On Jun 19, 2013, at 9:09 AM, Reid Kleckner wrote:
> Author: rnk
> Date: Wed Jun 19 10:09:06 2013
> New Revision: 184308
>
> URL: http://llvm.org/viewvc/llvm-project?rev=184308&view=rev
> Log:
> [Driver] Don't forward source file input args to gcc
>
> gcc's inputs are already added by the InputInfoList passed to
> Action::ConstructJob.
>
> Fixes a regression from r183989. This was manifesting when targetting
> mingw as an extra input argument to gcc when assembling. It presumably
> affects other situations where clang calls gcc.
>
> Prior to r183989, forwardToGCC() was returning false because the INPUT
> option defined in OptParser.td had the DriverOption flag set on it.
> LLVM's Option library does not set this flag for INPUT.
>
> Reviewers: espindola
>
> Differential Revision: http://llvm-reviews.chandlerc.com/D999
>
> Modified:
> cfe/trunk/lib/Driver/Tools.cpp
> cfe/trunk/test/Driver/no-integrated-as-win.c
>
> Modified: cfe/trunk/lib/Driver/Tools.cpp
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Tools.cpp?rev=184308&r1=184307&r2=184308&view=diff
> ==============================================================================
> --- cfe/trunk/lib/Driver/Tools.cpp (original)
> +++ cfe/trunk/lib/Driver/Tools.cpp Wed Jun 19 10:09:06 2013
> @@ -225,7 +225,10 @@ static void addProfileRT(const ToolChain
> }
>
> static bool forwardToGCC(const Option &O) {
> - return !O.hasFlag(options::NoForward) &&
> + // Don't forward inputs from the original command line. They are added from
> + // InputInfoList.
> + return !O.getKind() == Option::InputClass &&
Did you mean:
return O.getKind() != Option::InputClass &&
^
? Am I the only one who noticed this? How are the tests even passing with this? And why didn't Clang warn on this for you? (Want me to file a bug?)
Chip
More information about the cfe-commits
mailing list