On 10/07/2014 03:41, Nick Lewycky wrote:
On 9 July 2014 07:05, Alp Toker <[email protected] <mailto:[email protected]>> wrote:

    Author: alp
    Date: Wed Jul  9 09:05:11 2014
    New Revision: 212620

    URL: http://llvm.org/viewvc/llvm-project?rev=212620&view=rev
    Log:
    cc1as: consolidate option flags with cc1 and eliminate duplication

    The clang -cc1as options are nearly a strict subset of -cc1.
    Instead of
    duplicating the definitions and documentation, let's go ahead and
    share the
    definitions in a similar way the current handling of combined
    driver and
    frontend flags, eliminating some of the vestigial legacy
    surrounding the
    assembler subcommand.


Nice!

    Removed:
        cfe/trunk/include/clang/Driver/CC1AsOptions.h
        cfe/trunk/include/clang/Driver/CC1AsOptions.td
        cfe/trunk/lib/Driver/CC1AsOptions.cpp
    Modified:
        cfe/trunk/include/clang/Driver/CC1Options.td
        cfe/trunk/include/clang/Driver/CMakeLists.txt
        cfe/trunk/include/clang/Driver/Options.h
        cfe/trunk/include/clang/Driver/Options.td
        cfe/trunk/lib/Driver/CMakeLists.txt
        cfe/trunk/tools/driver/cc1as_main.cpp

    +#if 0
    +bool CompilerInvocation::CreateFromArgs(CompilerInvocation &Res,
    +                                        const char *const *ArgBegin,
    +                                        const char *const *ArgEnd,
    +                                        DiagnosticsEngine &Diags) {
    +  bool Success = true;
    +
    +  // Parse the arguments.
    +  std::unique_ptr<OptTable> Opts(createDriverOptTable());
    +  const unsigned IncludedFlagsBitmask = options::CC1Option;
    +  unsigned MissingArgIndex, MissingArgCount;
    +  std::unique_ptr<InputArgList> Args(
    + Opts->ParseArgs(ArgBegin, ArgEnd, MissingArgIndex, MissingArgCount,
    + IncludedFlagsBitmask));
    +
    +  // Check for missing argument error.
    +  if (MissingArgCount) {
    +    Diags.Report(diag::err_drv_missing_argument)
    +    << Args->getArgString(MissingArgIndex) << MissingArgCount;
    +    Success = false;
    +  }
    +
    +  // Issue errors on unknown arguments.
    +  for (arg_iterator it = Args->filtered_begin(OPT_UNKNOWN),
    +       ie = Args->filtered_end(); it != ie; ++it) {
    +    Diags.Report(diag::err_drv_unknown_argument) <<
    (*it)->getAsString(*Args);
    +    Success = false;
    +  }
    +}
    +#endif


New #if 0'd vestiges? :)


:-)

Zapped in the subsequent commit, r212622.



Nick

--
http://www.nuanti.com
the browser experts

_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to