sammccall added a comment.

It looks like either we're in syntax-only mode (and -o will be ignored 
regardless) or we're in analyzer mode, and want -o.
It seems tempting to just stop stripping it in this case, but then we'll end up 
with -o foo.o -o foo.html, which is no good.
So the logic of this patch seems sound.

---

I wonder about the CLI though, I think the user will have to pass four flags 
with different styles to use it!

`clang-check -analyze ... -extra-arg=-Xanalyzer 
-extra-arg=-analyzer-output=html -output=html_output ....`

(Maybe -analyze should imply -Xanalyzer, and analyzer-output should be promoted 
to a real flag without the legacy plist default...)



================
Comment at: clang/test/Tooling/clang-check-reset-o.cpp:10
+// CHECK: {{qwerty}}
+// CHECK: C++ requires
+invalid;
----------------
it looks like you're checking for the analysis finding in stdout of 
clang-check, rather than in the generated html file.
So i'm not sure this test verifies it actually works!


================
Comment at: clang/tools/clang-check/ClangCheck.cpp:80
+static cl::opt<std::string>
+    Output("output", cl::desc(Options.getOptionHelpText(options::OPT_o)),
+           cl::cat(ClangCheckCategory));
----------------
I think this should have a name with clear semantics like -analyzer-output-file 
(and only be used in analyzer mode).

While it does just append -o to the command-line, I think it will confuse users 
to treat it as a generic output flag.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D97265/new/

https://reviews.llvm.org/D97265

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to