r189802 - Use -### instead of -ccc-print-options.

Rafael Espíndola rafael.espindola at gmail.com
Tue Sep 3 08:10:00 PDT 2013


which VS version are you using? 32 or 64 bits?


On 3 September 2013 11:02, Timur Iskhodzhanov <timurrrr at google.com> wrote:
> Umm no, I still see this as of r189813.
> Lemme try a clean build...
>
>
> 2013/9/3 Rafael Espíndola <rafael.espindola at gmail.com>
>>
>> That worked for me in 189811. Can you confirm?
>>
>> On 3 September 2013 10:15, Timur Iskhodzhanov <timurrrr at google.com> wrote:
>> >
>> >
>> >
>> > 2013/9/3 Rafael Espíndola <rafael.espindola at gmail.com>
>> >>
>> >> Is that a test in check-clang? I am building with msvc right now. What
>> >> do I have to do to reproduce it?
>> >
>> >
>> > clang-cl -fsanitize=address -Fehello.exe hello.cpp
>> > or even
>> > clang-cl -Fehello.exe hello.cpp
>> > should do the trick.
>> >
>> >
>> >>
>> >> On 3 September 2013 10:04, Timur Iskhodzhanov <timurrrr at google.com>
>> >> wrote:
>> >> > Hi Rafael,
>> >> >
>> >> > I believe this has broken clang-cl:
>> >> >
>> >> > clang-cl.exe: warning: argument unused during compilation:
>> >> > '--driver-mode=cl'
>> >> > clang-cl.exe: warning: argument unused during compilation:
>> >> > '-fsanitize=address'
>> >> > clang-cl.exe: warning: argument unused during compilation:
>> >> > '-Ferealloc_left_oob_crash_test.exe'
>> >> >
>> >> > Please fix or revert.
>> >> >
>> >> >
>> >> > 2013/9/3 Rafael Espindola <rafael.espindola at gmail.com>
>> >> >>
>> >> >> Author: rafael
>> >> >> Date: Tue Sep  3 08:26:49 2013
>> >> >> New Revision: 189802
>> >> >>
>> >> >> URL: http://llvm.org/viewvc/llvm-project?rev=189802&view=rev
>> >> >> Log:
>> >> >> Use -### instead of -ccc-print-options.
>> >> >>
>> >> >> Convert the last few tests using -ccc-print-options to -### and
>> >> >> remove
>> >> >> -ccc-print-options.
>> >> >>
>> >> >> Removed:
>> >> >>     cfe/trunk/test/Driver/parsing.c
>> >> >> Modified:
>> >> >>     cfe/trunk/include/clang/Driver/Driver.h
>> >> >>     cfe/trunk/include/clang/Driver/Options.td
>> >> >>     cfe/trunk/lib/Driver/Driver.cpp
>> >> >>     cfe/trunk/test/Driver/option-aliases.c
>> >> >>     cfe/trunk/test/Driver/qa_override.c
>> >> >>     cfe/trunk/test/Driver/working-directory.c
>> >> >>
>> >> >> Modified: cfe/trunk/include/clang/Driver/Driver.h
>> >> >> URL:
>> >> >>
>> >> >>
>> >> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Driver/Driver.h?rev=189802&r1=189801&r2=189802&view=diff
>> >> >>
>> >> >>
>> >> >>
>> >> >> ==============================================================================
>> >> >> --- cfe/trunk/include/clang/Driver/Driver.h (original)
>> >> >> +++ cfe/trunk/include/clang/Driver/Driver.h Tue Sep  3 08:26:49 2013
>> >> >> @@ -318,9 +318,6 @@ public:
>> >> >>    /// \param ShowHidden - Show hidden options.
>> >> >>    void PrintHelp(bool ShowHidden) const;
>> >> >>
>> >> >> -  /// PrintOptions - Print the list of arguments.
>> >> >> -  void PrintOptions(const llvm::opt::ArgList &Args) const;
>> >> >> -
>> >> >>    /// PrintVersion - Print the driver version.
>> >> >>    void PrintVersion(const Compilation &C, raw_ostream &OS) const;
>> >> >>
>> >> >>
>> >> >> Modified: cfe/trunk/include/clang/Driver/Options.td
>> >> >> URL:
>> >> >>
>> >> >>
>> >> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Driver/Options.td?rev=189802&r1=189801&r2=189802&view=diff
>> >> >>
>> >> >>
>> >> >>
>> >> >> ==============================================================================
>> >> >> --- cfe/trunk/include/clang/Driver/Options.td (original)
>> >> >> +++ cfe/trunk/include/clang/Driver/Options.td Tue Sep  3 08:26:49
>> >> >> 2013
>> >> >> @@ -137,8 +137,6 @@ class InternalDebugOpt : Group<internal_
>> >> >>    Flags<[DriverOption, HelpHidden]>;
>> >> >>  def ccc_install_dir : Separate<["-"], "ccc-install-dir">,
>> >> >> InternalDebugOpt,
>> >> >>    HelpText<"Simulate installation in the given directory">;
>> >> >> -def ccc_print_options : Flag<["-"], "ccc-print-options">,
>> >> >> InternalDebugOpt,
>> >> >> -  HelpText<"Dump parsed command line arguments">;
>> >> >>  def ccc_print_phases : Flag<["-"], "ccc-print-phases">,
>> >> >> InternalDebugOpt,
>> >> >>    HelpText<"Dump list of actions to perform">;
>> >> >>  def ccc_print_bindings : Flag<["-"], "ccc-print-bindings">,
>> >> >> InternalDebugOpt,
>> >> >>
>> >> >> Modified: cfe/trunk/lib/Driver/Driver.cpp
>> >> >> URL:
>> >> >>
>> >> >>
>> >> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Driver.cpp?rev=189802&r1=189801&r2=189802&view=diff
>> >> >>
>> >> >>
>> >> >>
>> >> >> ==============================================================================
>> >> >> --- cfe/trunk/lib/Driver/Driver.cpp (original)
>> >> >> +++ cfe/trunk/lib/Driver/Driver.cpp Tue Sep  3 08:26:49 2013
>> >> >> @@ -58,7 +58,7 @@ Driver::Driver(StringRef ClangExecutable
>> >> >>      CCPrintOptionsFilename(0), CCPrintHeadersFilename(0),
>> >> >>      CCLogDiagnosticsFilename(0),
>> >> >>      CCCPrintBindings(false),
>> >> >> -    CCPrintOptions(false), CCPrintHeaders(false),
>> >> >> CCLogDiagnostics(false),
>> >> >> +    CCPrintHeaders(false), CCLogDiagnostics(false),
>> >> >>      CCGenDiagnostics(false), CCCGenericGCCName(""),
>> >> >> CheckInputsExist(true),
>> >> >>      CCCUsePCH(true), SuppressMissingInputWarning(false) {
>> >> >>
>> >> >> @@ -327,7 +327,7 @@ Compilation *Driver::BuildCompilation(Ar
>> >> >>    // FIXME: What are we going to do with -V and -b?
>> >> >>
>> >> >>    // FIXME: This stuff needs to go into the Compilation, not the
>> >> >> driver.
>> >> >> -  bool CCCPrintOptions, CCCPrintActions;
>> >> >> +  bool CCCPrintActions;
>> >> >>
>> >> >>    InputArgList *Args = ParseArgStrings(ArgList.slice(1));
>> >> >>
>> >> >> @@ -343,7 +343,6 @@ Compilation *Driver::BuildCompilation(Ar
>> >> >>    // should be outside in the client; the parts that aren't should
>> >> >> have
>> >> >> proper
>> >> >>    // options, either by introducing new ones or by overloading gcc
>> >> >> ones
>> >> >> like -V
>> >> >>    // or -b.
>> >> >> -  CCCPrintOptions = Args->hasArg(options::OPT_ccc_print_options);
>> >> >>    CCCPrintActions = Args->hasArg(options::OPT_ccc_print_phases);
>> >> >>    CCCPrintBindings = Args->hasArg(options::OPT_ccc_print_bindings);
>> >> >>    if (const Arg *A = Args->getLastArg(options::OPT_ccc_gcc_name))
>> >> >> @@ -387,12 +386,6 @@ Compilation *Driver::BuildCompilation(Ar
>> >> >>    // The compilation takes ownership of Args.
>> >> >>    Compilation *C = new Compilation(*this, TC, Args,
>> >> >> TranslatedArgs);
>> >> >>
>> >> >> -  // FIXME: This behavior shouldn't be here.
>> >> >> -  if (CCCPrintOptions) {
>> >> >> -    PrintOptions(C->getInputArgs());
>> >> >> -    return C;
>> >> >> -  }
>> >> >> -
>> >> >>    if (!HandleImmediateArgs(*C))
>> >> >>      return C;
>> >> >>
>> >> >> @@ -641,23 +634,6 @@ int Driver::ExecuteCompilation(const Com
>> >> >>    return 0;
>> >> >>  }
>> >> >>
>> >> >> -void Driver::PrintOptions(const ArgList &Args) const {
>> >> >> -  unsigned i = 0;
>> >> >> -  for (ArgList::const_iterator it = Args.begin(), ie = Args.end();
>> >> >> -       it != ie; ++it, ++i) {
>> >> >> -    Arg *A = *it;
>> >> >> -    llvm::errs() << "Option " << i << " - "
>> >> >> -                 << "Name: \"" << A->getOption().getPrefixedName()
>> >> >> <<
>> >> >> "\", "
>> >> >> -                 << "Values: {";
>> >> >> -    for (unsigned j = 0; j < A->getNumValues(); ++j) {
>> >> >> -      if (j)
>> >> >> -        llvm::errs() << ", ";
>> >> >> -      llvm::errs() << '"' << A->getValue(j) << '"';
>> >> >> -    }
>> >> >> -    llvm::errs() << "}\n";
>> >> >> -  }
>> >> >> -}
>> >> >> -
>> >> >>  void Driver::PrintHelp(bool ShowHidden) const {
>> >> >>    unsigned IncludedFlagsBitmask;
>> >> >>    unsigned ExcludedFlagsBitmask;
>> >> >>
>> >> >> Modified: cfe/trunk/test/Driver/option-aliases.c
>> >> >> URL:
>> >> >>
>> >> >>
>> >> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/option-aliases.c?rev=189802&r1=189801&r2=189802&view=diff
>> >> >>
>> >> >>
>> >> >>
>> >> >> ==============================================================================
>> >> >> --- cfe/trunk/test/Driver/option-aliases.c (original)
>> >> >> +++ cfe/trunk/test/Driver/option-aliases.c Tue Sep  3 08:26:49 2013
>> >> >> @@ -1,11 +1,14 @@
>> >> >> -// RUN: %clang -ccc-print-options \
>> >> >> -// RUN:  --save-temps --undefine-macro=FOO --undefine-macro FOO \
>> >> >> -// RUN: --param=FOO --output=FOO 2> %t
>> >> >> -// RUN: FileCheck --check-prefix=CHECK-OPTIONS < %t %s
>> >> >> +// RUN: %clang -### -S \
>> >> >> +// RUN:  --save-temps --undefine-macro=FOO --undefine-macro BAR \
>> >> >> +// RUN: --param=FOO --output=FOO %s 2>&1 | \
>> >> >> +// RUN: FileCheck %s
>> >> >>
>> >> >> -// CHECK-OPTIONS: Option 0 - Name: "-ccc-print-options", Values: {}
>> >> >> -// CHECK-OPTIONS: Option 1 - Name: "-save-temps", Values: {}
>> >> >> -// CHECK-OPTIONS: Option 2 - Name: "-U", Values: {"FOO"}
>> >> >> -// CHECK-OPTIONS: Option 3 - Name: "-U", Values: {"FOO"}
>> >> >> -// CHECK-OPTIONS: Option 4 - Name: "--param", Values: {"FOO"}
>> >> >> -// CHECK-OPTIONS: Option 5 - Name: "-o", Values: {"FOO"}
>> >> >> +// CHECK: "-cc1"
>> >> >> +// CHECK: "-E"
>> >> >> +// CHECK: "-U" "FOO"
>> >> >> +// CHECK: "-U" "BAR"
>> >> >> +// CHECK: "-o" "option-aliases.i"
>> >> >> +
>> >> >> +// CHECK-NEXT: "-cc1"
>> >> >> +// CHECK: "-S"
>> >> >> +// CHECK: "-o" "FOO"
>> >> >>
>> >> >> Removed: cfe/trunk/test/Driver/parsing.c
>> >> >> URL:
>> >> >>
>> >> >>
>> >> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/parsing.c?rev=189801&view=auto
>> >> >>
>> >> >>
>> >> >>
>> >> >> ==============================================================================
>> >> >> --- cfe/trunk/test/Driver/parsing.c (original)
>> >> >> +++ cfe/trunk/test/Driver/parsing.c (removed)
>> >> >> @@ -1,22 +0,0 @@
>> >> >> -// RUN: %clang -ccc-print-options input -Yunknown -m32 -arch ppc
>> >> >> -djoined
>> >> >> -A separate -Ajoined -Wp,one,two -Xarch_joined AndSeparate
>> >> >> -sectalign 1
>> >> >> 2 3
>> >> >> 2> %t
>> >> >> -// RUN: grep 'Option 0 - Name: "-ccc-print-options", Values: {}' %t
>> >> >> -// RUN: grep 'Option 1 - Name: "<input>", Values: {"input"}' %t
>> >> >> -// RUN: grep 'Option 2 - Name: "<unknown>", Values: {"-Yunknown"}'
>> >> >> %t
>> >> >> -// RUN: grep 'Option 3 - Name: "-m32", Values: {}' %t
>> >> >> -// RUN: grep 'Option 4 - Name: "-arch", Values: {"ppc"}' %t
>> >> >> -// RUN: grep 'Option 5 - Name: "-d", Values: {"joined"}' %t
>> >> >> -// RUN: grep 'Option 6 - Name: "-A", Values: {"separate"}' %t
>> >> >> -// RUN: grep 'Option 7 - Name: "-A", Values: {"joined"}' %t
>> >> >> -// RUN: grep 'Option 8 - Name: "-Wp,", Values: {"one", "two"}' %t
>> >> >> -// RUN: grep 'Option 9 - Name: "-Xarch_", Values: {"joined",
>> >> >> "AndSeparate"}' %t
>> >> >> -// RUN: grep 'Option 10 - Name: "-sectalign", Values: {"1", "2",
>> >> >> "3"}'
>> >> >> %t
>> >> >> -
>> >> >> -// RUN: not %clang -V 2> %t
>> >> >> -// RUN: grep "error: argument to '-V' is missing (expected 1
>> >> >> value)"
>> >> >> %t
>> >> >> -// RUN: not %clang -sectalign 1 2 2> %t
>> >> >> -// RUN: grep "error: argument to '-sectalign' is missing (expected
>> >> >> 3
>> >> >> values)" %t
>> >> >> -
>> >> >> -// Verify that search continues after find the first option.
>> >> >> -// RUN: %clang -ccc-print-options -Wally 2> %t
>> >> >> -// RUN: grep 'Option 0 - Name: "-ccc-print-options", Values: {}' %t
>> >> >> -// RUN: grep 'Option 1 - Name: "-W", Values: {"ally"}' %t
>> >> >>
>> >> >> Modified: cfe/trunk/test/Driver/qa_override.c
>> >> >> URL:
>> >> >>
>> >> >>
>> >> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/qa_override.c?rev=189802&r1=189801&r2=189802&view=diff
>> >> >>
>> >> >>
>> >> >>
>> >> >> ==============================================================================
>> >> >> --- cfe/trunk/test/Driver/qa_override.c (original)
>> >> >> +++ cfe/trunk/test/Driver/qa_override.c Tue Sep  3 08:26:49 2013
>> >> >> @@ -1,14 +1,10 @@
>> >> >> -// RUN: env QA_OVERRIDE_GCC3_OPTIONS="#+-Os +-Oz +-O +-O3 +-Oignore
>> >> >> +a
>> >> >> +b
>> >> >> +c xb Xa Omagic ^-ccc-print-options  " %clang x -O2 b -O3 2>&1 |
>> >> >> FileCheck
>> >> >> %s
>> >> >> +// RUN: env QA_OVERRIDE_GCC3_OPTIONS="#+-Os +-Oz +-O +-O3 +-Oignore
>> >> >> +a
>> >> >> +b
>> >> >> +c xb Xa Omagic ^-###  " %clang %s -O2 b -O3 2>&1 | FileCheck %s
>> >> >>  // RUN: env QA_OVERRIDE_GCC3_OPTIONS="x-Werror +-mfoo" %clang
>> >> >> -Werror
>> >> >> %s
>> >> >> -c -### 2>&1 | FileCheck %s -check-prefix=RM-WERROR
>> >> >>
>> >> >> -// FIXME: It seems doesn't work with gcc-driver.
>> >> >> -// REQUIRES: clang-driver
>> >> >> -
>> >> >> -// CHECK-NOT: ###
>> >> >> -// CHECK: Option 0 - Name: "-ccc-print-options", Values: {}
>> >> >> -// CHECK-NEXT: Option 1 - Name: "<input>", Values: {"x"}
>> >> >> -// CHECK-NEXT: Option 2 - Name: "-O", Values: {"ignore"}
>> >> >> -// CHECK-NEXT: Option 3 - Name: "-O", Values: {"magic"}
>> >> >> +// CHECK: "-cc1"
>> >> >> +// CHECK-NOT: "-Oignore"
>> >> >> +// CHECK: "-Omagic"
>> >> >> +// CHECK-NOT: "-Oignore"
>> >> >>
>> >> >>  // RM-WERROR: ### QA_OVERRIDE_GCC3_OPTIONS: x-Werror +-mfoo
>> >> >>  // RM-WERROR-NEXT: ### Deleting argument -Werror
>> >> >>
>> >> >> Modified: cfe/trunk/test/Driver/working-directory.c
>> >> >> URL:
>> >> >>
>> >> >>
>> >> >> http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/working-directory.c?rev=189802&r1=189801&r2=189802&view=diff
>> >> >>
>> >> >>
>> >> >>
>> >> >> ==============================================================================
>> >> >> --- cfe/trunk/test/Driver/working-directory.c (original)
>> >> >> +++ cfe/trunk/test/Driver/working-directory.c Tue Sep  3 08:26:49
>> >> >> 2013
>> >> >> @@ -1,4 +1,3 @@
>> >> >> -// RUN: %clang -ccc-print-options -working-directory "C:\Test"
>> >> >> input
>> >> >> 2>&1
>> >> >> | FileCheck %s
>> >> >> -// CHECK: Option 0 - Name: "-ccc-print-options", Values: {}
>> >> >> -// CHECK: Option 1 - Name: "-working-directory", Values:
>> >> >> {"C:\Test"}
>> >> >> -// CHECK: Option 2 - Name: "<input>", Values: {"input"}
>> >> >> +// RUN: %clang -### -working-directory /no/such/dir/ input 2>&1 |
>> >> >> FileCheck %s
>> >> >> +
>> >> >> +//CHECK: no such file or directory: '/no/such/dir/input'
>> >> >>
>> >> >>
>> >> >> _______________________________________________
>> >> >> cfe-commits mailing list
>> >> >> cfe-commits at cs.uiuc.edu
>> >> >> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>> >> >
>> >> >
>> >
>> >
>
>




More information about the cfe-commits mailing list