Discussion:
[clang-tools-extra] r303735 - Modify test so that it looks for patterns in stderr as well
Serge Pavlov via cfe-commits
2017-05-24 10:50:56 UTC
Permalink
Author: sepavloff
Date: Wed May 24 05:50:56 2017
New Revision: 303735

URL: http://llvm.org/viewvc/llvm-project?rev=303735&view=rev
Log:
Modify test so that it looks for patterns in stderr as well

With the change https://reviews.llvm.org/D33013 driver will not build
compilation object if command line is invalid, in particular, if
unrecognized option is provided. In such cases it will prints diagnostics
on stderr. The test 'clang-tidy/diagnostic.cpp' checks reaction on
unrecognized option and will fail when D33013 is applied because it checks
only stdout for test patterns and expects the name of diagnostic category
prepared by clang-tidy. With this change the test makes more general check
and must work in either case.

Differential Revision: https://reviews.llvm.org/D33173

Modified:
clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp

Modified: clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp?rev=303735&r1=303734&r2=303735&view=diff
==============================================================================
--- clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp (original)
+++ clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp Wed May 24 05:50:56 2017
@@ -1,11 +1,11 @@
// RUN: clang-tidy -checks='-*,modernize-use-override' %s.nonexistent.cpp -- | FileCheck -check-prefix=CHECK1 -implicit-check-not='{{warning:|error:}}' %s
-// RUN: clang-tidy -checks='-*,clang-diagnostic-*,google-explicit-constructor' %s -- -fan-unknown-option | FileCheck -check-prefix=CHECK2 -implicit-check-not='{{warning:|error:}}' %s
-// RUN: clang-tidy -checks='-*,google-explicit-constructor,clang-diagnostic-literal-conversion' %s -- -fan-unknown-option | FileCheck -check-prefix=CHECK3 -implicit-check-not='{{warning:|error:}}' %s
+// RUN: clang-tidy -checks='-*,clang-diagnostic-*,google-explicit-constructor' %s -- -fan-unknown-option 2>&1 | FileCheck -check-prefix=CHECK2 -implicit-check-not='{{warning:|error:}}' %s
+// RUN: clang-tidy -checks='-*,google-explicit-constructor,clang-diagnostic-literal-conversion' %s -- -fan-unknown-option 2>&1 | FileCheck -check-prefix=CHECK3 -implicit-check-not='{{warning:|error:}}' %s
// RUN: clang-tidy -checks='-*,modernize-use-override,clang-diagnostic-macro-redefined' %s -- -DMACRO_FROM_COMMAND_LINE | FileCheck -check-prefix=CHECK4 -implicit-check-not='{{warning:|error:}}' %s

// CHECK1: error: error reading '{{.*}}.nonexistent.cpp' [clang-diagnostic-error]
-// CHECK2: error: unknown argument: '-fan-unknown-option' [clang-diagnostic-error]
-// CHECK3: error: unknown argument: '-fan-unknown-option' [clang-diagnostic-error]
+// CHECK2: error: unknown argument: '-fan-unknown-option'
+// CHECK3: error: unknown argument: '-fan-unknown-option'

// CHECK2: :[[@LINE+2]]:9: warning: implicit conversion from 'double' to 'int' changes value from 1.5 to 1 [clang-diagnostic-literal-conversion]
// CHECK3: :[[@LINE+1]]:9: warning: implicit conversion from 'double' to 'int' changes value
David Blaikie via cfe-commits
2017-06-12 20:42:50 UTC
Permalink
I've been seeing errors from this test recently:

Command Output (stderr):
--
1 error generated.
Error while processing
/usr/local/google/home/blaikie/dev/llvm/src/tools/clang/tools/extra/test/clang-tidy/diagnostic.cpp.nonexistent.cpp.
/usr/local/google/home/blaikie/dev/llvm/src/tools/clang/tools/extra/test/clang-tidy/diagnostic.cpp:10:12:
error: expected string not found in input
// CHECK2: :[[@LINE+2]]:9: warning: implicit conversion from 'double' to
'int' changes value from 1.5 to 1 [clang-diagnostic-literal-conversion]
^
<stdin>:2:1: note: scanning from here
Skipping
/usr/local/google/home/blaikie/dev/llvm/src/tools/clang/tools/extra/test/clang-tidy/diagnostic.cpp.
Compile command not found.
^
<stdin>:2:1: note: with expression "@LINE+2" equal to "12"
Skipping
/usr/local/google/home/blaikie/dev/llvm/src/tools/clang/tools/extra/test/clang-tidy/diagnostic.cpp.
Compile command not found.
^


Specifically, the output is:
$ ./bin/clang-tidy
-checks='-*,clang-diagnostic-*,google-explicit-constructor'
/usr/local/google/home/blaikie/dev/llvm/src/tools/clang/tools/extra/test/clang-tidy/diagnostic.cpp
-- -fan-unknown-option 2>&1 error: unknown
argument: '-fan-unknown-option'
Skipping
/usr/local/google/home/blaikie/dev/llvm/src/tools/clang/tools/extra/test/clang-tidy/diagnostic.cpp.
Compile command not found.


Does this look like it might be related to any of your changes in this
area? Perhaps the error due to unknown argument is causing clang-tidy not
to continue on to run the check & report the warning?


On Wed, May 24, 2017 at 3:51 AM Serge Pavlov via cfe-commits <
Post by Serge Pavlov via cfe-commits
Author: sepavloff
Date: Wed May 24 05:50:56 2017
New Revision: 303735
URL: http://llvm.org/viewvc/llvm-project?rev=303735&view=rev
Modify test so that it looks for patterns in stderr as well
With the change https://reviews.llvm.org/D33013 driver will not build
compilation object if command line is invalid, in particular, if
unrecognized option is provided. In such cases it will prints diagnostics
on stderr. The test 'clang-tidy/diagnostic.cpp' checks reaction on
unrecognized option and will fail when D33013 is applied because it checks
only stdout for test patterns and expects the name of diagnostic category
prepared by clang-tidy. With this change the test makes more general check
and must work in either case.
Differential Revision: https://reviews.llvm.org/D33173
clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp
Modified: clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp
http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp?rev=303735&r1=303734&r2=303735&view=diff
==============================================================================
--- clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp (original)
+++ clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp Wed May 24 05:50:56 2017
@@ -1,11 +1,11 @@
// RUN: clang-tidy -checks='-*,modernize-use-override' %s.nonexistent.cpp
-- | FileCheck -check-prefix=CHECK1
-implicit-check-not='{{warning:|error:}}' %s
-// RUN: clang-tidy
-checks='-*,clang-diagnostic-*,google-explicit-constructor' %s --
-fan-unknown-option | FileCheck -check-prefix=CHECK2
-implicit-check-not='{{warning:|error:}}' %s
-// RUN: clang-tidy
-checks='-*,google-explicit-constructor,clang-diagnostic-literal-conversion'
%s -- -fan-unknown-option | FileCheck -check-prefix=CHECK3
-implicit-check-not='{{warning:|error:}}' %s
+// RUN: clang-tidy
-checks='-*,clang-diagnostic-*,google-explicit-constructor' %s --
-fan-unknown-option 2>&1 | FileCheck -check-prefix=CHECK2
-implicit-check-not='{{warning:|error:}}' %s
+// RUN: clang-tidy
-checks='-*,google-explicit-constructor,clang-diagnostic-literal-conversion'
%s -- -fan-unknown-option 2>&1 | FileCheck -check-prefix=CHECK3
-implicit-check-not='{{warning:|error:}}' %s
// RUN: clang-tidy
-checks='-*,modernize-use-override,clang-diagnostic-macro-redefined' %s --
-DMACRO_FROM_COMMAND_LINE | FileCheck -check-prefix=CHECK4
-implicit-check-not='{{warning:|error:}}' %s
// CHECK1: error: error reading '{{.*}}.nonexistent.cpp'
[clang-diagnostic-error]
-// CHECK2: error: unknown argument: '-fan-unknown-option'
[clang-diagnostic-error]
-// CHECK3: error: unknown argument: '-fan-unknown-option'
[clang-diagnostic-error]
+// CHECK2: error: unknown argument: '-fan-unknown-option'
+// CHECK3: error: unknown argument: '-fan-unknown-option'
'int' changes value from 1.5 to 1 [clang-diagnostic-literal-conversion]
'int' changes value
_______________________________________________
cfe-commits mailing list
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Serge Pavlov via cfe-commits
2017-06-13 14:41:27 UTC
Permalink
I cannot reproduce such fail, so I can only guess how changes made in
https://reviews.llvm.org/rL303756 and https://reviews.llvm.org/rL303741
could cause such problem. Behavior of `Driver::BuildCompilation` is changed
so that it returns null pointer if errors occur during driver argument
parse. It is called in `CompilationDatabase.cpp` from
`stripPositionalArgs`. The call stack at this point is:
stripPositionalArgs
clang::tooling::FixedCompilationDatabase::loadFromCommandLine
clang::tooling::CommonOptionsParser::CommonOptionsParser
clang::tidy::clangTidyMain
main
`FixedCompilationDatabase::loadFromCommandLine` returns null and
CommonOptionsParser uses another method to create compilation database. The
output "Compile command not found" means that no input file were found in
`ClangTool::run`. Maybe some file names are nulls?


Thanks,
--Serge
Post by David Blaikie via cfe-commits
--
1 error generated.
Error while processing /usr/local/google/home/blaikie/dev/llvm/src/tools/
clang/tools/extra/test/clang-tidy/diagnostic.cpp.nonexistent.cpp.
/usr/local/google/home/blaikie/dev/llvm/src/tools/
clang/tools/extra/test/clang-tidy/diagnostic.cpp:10:12: error: expected
string not found in input
'int' changes value from 1.5 to 1 [clang-diagnostic-literal-conversion]
^
<stdin>:2:1: note: scanning from here
Skipping /usr/local/google/home/blaikie/dev/llvm/src/tools/
clang/tools/extra/test/clang-tidy/diagnostic.cpp. Compile command not
found.
^
Skipping /usr/local/google/home/blaikie/dev/llvm/src/tools/
clang/tools/extra/test/clang-tidy/diagnostic.cpp. Compile command not
found.
^
$ ./bin/clang-tidy -checks='-*,clang-diagnostic-*,google-explicit-constructor'
/usr/local/google/home/blaikie/dev/llvm/src/tools/
clang/tools/extra/test/clang-tidy/diagnostic.cpp -- -fan-unknown-option
'-fan-unknown-option'
Skipping /usr/local/google/home/
blaikie/dev/llvm/src/tools/clang/tools/extra/test/clang-tidy/diagnostic.cpp.
Compile command not found.
Does this look like it might be related to any of your changes in this
area? Perhaps the error due to unknown argument is causing clang-tidy not
to continue on to run the check & report the warning?
On Wed, May 24, 2017 at 3:51 AM Serge Pavlov via cfe-commits <
Post by Serge Pavlov via cfe-commits
Author: sepavloff
Date: Wed May 24 05:50:56 2017
New Revision: 303735
URL: http://llvm.org/viewvc/llvm-project?rev=303735&view=rev
Modify test so that it looks for patterns in stderr as well
With the change https://reviews.llvm.org/D33013 driver will not build
compilation object if command line is invalid, in particular, if
unrecognized option is provided. In such cases it will prints diagnostics
on stderr. The test 'clang-tidy/diagnostic.cpp' checks reaction on
unrecognized option and will fail when D33013 is applied because it checks
only stdout for test patterns and expects the name of diagnostic category
prepared by clang-tidy. With this change the test makes more general check
and must work in either case.
Differential Revision: https://reviews.llvm.org/D33173
clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp
Modified: clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/
trunk/test/clang-tidy/diagnostic.cpp?rev=303735&r1=
303734&r2=303735&view=diff
============================================================
==================
--- clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp (original)
+++ clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp Wed May 24 05:50:56 2017
@@ -1,11 +1,11 @@
// RUN: clang-tidy -checks='-*,modernize-use-override'
%s.nonexistent.cpp -- | FileCheck -check-prefix=CHECK1
-implicit-check-not='{{warning:|error:}}' %s
-// RUN: clang-tidy -checks='-*,clang-diagnostic-*,google-explicit-constructor'
%s -- -fan-unknown-option | FileCheck -check-prefix=CHECK2
-implicit-check-not='{{warning:|error:}}' %s
-// RUN: clang-tidy -checks='-*,google-explicit-
constructor,clang-diagnostic-literal-conversion' %s --
-fan-unknown-option | FileCheck -check-prefix=CHECK3 -implicit-check-not='{{warning:|error:}}'
%s
+// RUN: clang-tidy -checks='-*,clang-diagnostic-*,google-explicit-constructor'
%s -- -fan-unknown-option 2>&1 | FileCheck -check-prefix=CHECK2
-implicit-check-not='{{warning:|error:}}' %s
+// RUN: clang-tidy -checks='-*,google-explicit-
constructor,clang-diagnostic-literal-conversion' %s --
-fan-unknown-option 2>&1 | FileCheck -check-prefix=CHECK3
-implicit-check-not='{{warning:|error:}}' %s
// RUN: clang-tidy -checks='-*,modernize-use-override,clang-diagnostic-macro-redefined'
%s -- -DMACRO_FROM_COMMAND_LINE | FileCheck -check-prefix=CHECK4
-implicit-check-not='{{warning:|error:}}' %s
// CHECK1: error: error reading '{{.*}}.nonexistent.cpp'
[clang-diagnostic-error]
-// CHECK2: error: unknown argument: '-fan-unknown-option'
[clang-diagnostic-error]
-// CHECK3: error: unknown argument: '-fan-unknown-option'
[clang-diagnostic-error]
+// CHECK2: error: unknown argument: '-fan-unknown-option'
+// CHECK3: error: unknown argument: '-fan-unknown-option'
'int' changes value from 1.5 to 1 [clang-diagnostic-literal-conversion]
'int' changes value
_______________________________________________
cfe-commits mailing list
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
David Blaikie via cfe-commits
2017-06-13 21:24:56 UTC
Permalink
Ah, I find that the test passes if I remove the compile_commands.json file
from my build directory (I have Ninja configured to generate a
compile_commands.json file).

Looks like what happens is it finds the compilation database and fails hard
when the database doesn't contain a compile command for the file in
question. If the database is not found, it falls back to some basic command
behavior, perhaps?

Is there some way this test could be fixed to cope with this, otherwise it
seems to get in the way of people actually using clang tools in their
LLVM/Clang build environment?
Post by Serge Pavlov via cfe-commits
I cannot reproduce such fail, so I can only guess how changes made in
https://reviews.llvm.org/rL303756 and https://reviews.llvm.org/rL303741
could cause such problem. Behavior of `Driver::BuildCompilation` is changed
so that it returns null pointer if errors occur during driver argument
parse. It is called in `CompilationDatabase.cpp` from
stripPositionalArgs
clang::tooling::FixedCompilationDatabase::loadFromCommandLine
clang::tooling::CommonOptionsParser::CommonOptionsParser
clang::tidy::clangTidyMain
main
`FixedCompilationDatabase::loadFromCommandLine` returns null and
CommonOptionsParser uses another method to create compilation database. The
output "Compile command not found" means that no input file were found in
`ClangTool::run`. Maybe some file names are nulls?
Thanks,
--Serge
Post by David Blaikie via cfe-commits
--
1 error generated.
Error while processing
/usr/local/google/home/blaikie/dev/llvm/src/tools/clang/tools/extra/test/clang-tidy/diagnostic.cpp.nonexistent.cpp.
error: expected string not found in input
'int' changes value from 1.5 to 1 [clang-diagnostic-literal-conversion]
^
<stdin>:2:1: note: scanning from here
Skipping
/usr/local/google/home/blaikie/dev/llvm/src/tools/clang/tools/extra/test/clang-tidy/diagnostic.cpp.
Compile command not found.
^
Skipping
/usr/local/google/home/blaikie/dev/llvm/src/tools/clang/tools/extra/test/clang-tidy/diagnostic.cpp.
Compile command not found.
^
$ ./bin/clang-tidy
-checks='-*,clang-diagnostic-*,google-explicit-constructor'
/usr/local/google/home/blaikie/dev/llvm/src/tools/clang/tools/extra/test/clang-tidy/diagnostic.cpp
-- -fan-unknown-option 2>&1 error: unknown
argument: '-fan-unknown-option'
Skipping
/usr/local/google/home/blaikie/dev/llvm/src/tools/clang/tools/extra/test/clang-tidy/diagnostic.cpp.
Compile command not found.
Does this look like it might be related to any of your changes in this
area? Perhaps the error due to unknown argument is causing clang-tidy not
to continue on to run the check & report the warning?
On Wed, May 24, 2017 at 3:51 AM Serge Pavlov via cfe-commits <
Post by Serge Pavlov via cfe-commits
Author: sepavloff
Date: Wed May 24 05:50:56 2017
New Revision: 303735
URL: http://llvm.org/viewvc/llvm-project?rev=303735&view=rev
Modify test so that it looks for patterns in stderr as well
With the change https://reviews.llvm.org/D33013 driver will not build
compilation object if command line is invalid, in particular, if
unrecognized option is provided. In such cases it will prints diagnostics
on stderr. The test 'clang-tidy/diagnostic.cpp' checks reaction on
unrecognized option and will fail when D33013 is applied because it checks
only stdout for test patterns and expects the name of diagnostic category
prepared by clang-tidy. With this change the test makes more general check
and must work in either case.
Differential Revision: https://reviews.llvm.org/D33173
clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp
Modified: clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp
http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp?rev=303735&r1=303734&r2=303735&view=diff
==============================================================================
--- clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp (original)
+++ clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp Wed May 24 05:50:56 2017
@@ -1,11 +1,11 @@
// RUN: clang-tidy -checks='-*,modernize-use-override'
%s.nonexistent.cpp -- | FileCheck -check-prefix=CHECK1
-implicit-check-not='{{warning:|error:}}' %s
-// RUN: clang-tidy
-checks='-*,clang-diagnostic-*,google-explicit-constructor' %s --
-fan-unknown-option | FileCheck -check-prefix=CHECK2
-implicit-check-not='{{warning:|error:}}' %s
-// RUN: clang-tidy
-checks='-*,google-explicit-constructor,clang-diagnostic-literal-conversion'
%s -- -fan-unknown-option | FileCheck -check-prefix=CHECK3
-implicit-check-not='{{warning:|error:}}' %s
+// RUN: clang-tidy
-checks='-*,clang-diagnostic-*,google-explicit-constructor' %s --
-fan-unknown-option 2>&1 | FileCheck -check-prefix=CHECK2
-implicit-check-not='{{warning:|error:}}' %s
+// RUN: clang-tidy
-checks='-*,google-explicit-constructor,clang-diagnostic-literal-conversion'
%s -- -fan-unknown-option 2>&1 | FileCheck -check-prefix=CHECK3
-implicit-check-not='{{warning:|error:}}' %s
// RUN: clang-tidy
-checks='-*,modernize-use-override,clang-diagnostic-macro-redefined' %s --
-DMACRO_FROM_COMMAND_LINE | FileCheck -check-prefix=CHECK4
-implicit-check-not='{{warning:|error:}}' %s
// CHECK1: error: error reading '{{.*}}.nonexistent.cpp'
[clang-diagnostic-error]
-// CHECK2: error: unknown argument: '-fan-unknown-option'
[clang-diagnostic-error]
-// CHECK3: error: unknown argument: '-fan-unknown-option'
[clang-diagnostic-error]
+// CHECK2: error: unknown argument: '-fan-unknown-option'
+// CHECK3: error: unknown argument: '-fan-unknown-option'
to 'int' changes value from 1.5 to 1 [clang-diagnostic-literal-conversion]
to 'int' changes value
_______________________________________________
cfe-commits mailing list
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Serge Pavlov via cfe-commits
2017-06-14 15:17:29 UTC
Permalink
Post by David Blaikie via cfe-commits
Ah, I find that the test passes if I remove the compile_commands.json file
from my build directory (I have Ninja configured to generate a
compile_commands.json file).
Looks like what happens is it finds the compilation database and fails
hard when the database doesn't contain a compile command for the file in
question. If the database is not found, it falls back to some basic command
behavior, perhaps?
You are right, constructor of `CommonOptionsParser` calls
`autoDetectFromSource` or `autoDetectFromDirectory` prior to final
construction of `FixedCompilationDatabase.

Is there some way this test could be fixed to cope with this, otherwise it
Post by David Blaikie via cfe-commits
seems to get in the way of people actually using clang tools in their
LLVM/Clang build environment?
IIUC, presence of stale compilation database file in test directory could
break many tests. I don't understand why only diagnostic.cpp fails,
probably there is something wrong with the clang-tidy application cleanup
in this case?
Post by David Blaikie via cfe-commits
Post by Serge Pavlov via cfe-commits
I cannot reproduce such fail, so I can only guess how changes made in
https://reviews.llvm.org/rL303756 and https://reviews.llvm.org/rL303741
could cause such problem. Behavior of `Driver::BuildCompilation` is changed
so that it returns null pointer if errors occur during driver argument
parse. It is called in `CompilationDatabase.cpp` from
stripPositionalArgs
clang::tooling::FixedCompilationDatabase::loadFromCommandLine
clang::tooling::CommonOptionsParser::CommonOptionsParser
clang::tidy::clangTidyMain
main
`FixedCompilationDatabase::loadFromCommandLine` returns null and
CommonOptionsParser uses another method to create compilation database. The
output "Compile command not found" means that no input file were found in
`ClangTool::run`. Maybe some file names are nulls?
Thanks,
--Serge
Post by David Blaikie via cfe-commits
--
1 error generated.
Error while processing /usr/local/google/home/blaikie
/dev/llvm/src/tools/clang/tools/extra/test/clang-tidy/
diagnostic.cpp.nonexistent.cpp.
/usr/local/google/home/blaikie/dev/llvm/src/tools/clang/
tools/extra/test/clang-tidy/diagnostic.cpp:10:12: error: expected
string not found in input
'int' changes value from 1.5 to 1 [clang-diagnostic-literal-conversion]
^
<stdin>:2:1: note: scanning from here
Skipping /usr/local/google/home/blaikie/dev/llvm/src/tools/clang/
tools/extra/test/clang-tidy/diagnostic.cpp. Compile command not found.
^
Skipping /usr/local/google/home/blaikie/dev/llvm/src/tools/clang/
tools/extra/test/clang-tidy/diagnostic.cpp. Compile command not found.
^
$ ./bin/clang-tidy -checks='-*,clang-diagnostic-*,google-explicit-constructor'
/usr/local/google/home/blaikie/dev/llvm/src/tools/clang/
tools/extra/test/clang-tidy/diagnostic.cpp -- -fan-unknown-option 2>&1
error: unknown argument: '-fan-unknown-option'
Skipping /usr/local/google/home/blaikie
/dev/llvm/src/tools/clang/tools/extra/test/clang-tidy/diagnostic.cpp.
Compile command not found.
Does this look like it might be related to any of your changes in this
area? Perhaps the error due to unknown argument is causing clang-tidy not
to continue on to run the check & report the warning?
On Wed, May 24, 2017 at 3:51 AM Serge Pavlov via cfe-commits <
Post by Serge Pavlov via cfe-commits
Author: sepavloff
Date: Wed May 24 05:50:56 2017
New Revision: 303735
URL: http://llvm.org/viewvc/llvm-project?rev=303735&view=rev
Modify test so that it looks for patterns in stderr as well
With the change https://reviews.llvm.org/D33013 driver will not build
compilation object if command line is invalid, in particular, if
unrecognized option is provided. In such cases it will prints diagnostics
on stderr. The test 'clang-tidy/diagnostic.cpp' checks reaction on
unrecognized option and will fail when