Page MenuHomePhabricator
Feed Advanced Search

Sat, May 11

xazax.hun added a comment to D59798: [analyzer] Add analyzer option to limit the number of imported TUs.

Mostly looks good, I have two slightly related nits.

Sat, May 11, 12:08 AM · Restricted Project

Mon, Apr 29

xazax.hun accepted D61285: [analyzer] SmartPtrModeling: Fix a null dereference..

LG! These mistakes are so easy to make. Maybe we should add nullability annotations (or use optionals) in the future? (Or just make every non-null pointer a reference and make it a convention to always check for nulls?)

Mon, Apr 29, 6:00 PM · Restricted Project
xazax.hun accepted D61264: Fix inconsistency in calculating DIAG_START values.

LGTM! Thanks for thefix.

Mon, Apr 29, 5:38 PM · Restricted Project, Restricted Project

Apr 23 2019

xazax.hun accepted D61002: <<Replace this line with your revision title> [analyzer][CrossTU][NFC] Fix sanitizer test failure.

Feel free to commit such trivial fixes without reviews. Alternatively, you could use LLVM_FALLTHROUGH, but I have no strong preference in this case.

Apr 23 2019, 5:06 AM · Restricted Project

Apr 22 2019

xazax.hun added a comment to D46421: [analyzer][CrossTU] Extend CTU to VarDecls with initializer.

Looks good, thanks. Can you commit this or do you need someone to commit it on your behalf?

Apr 22 2019, 9:12 AM · Restricted Project

Apr 14 2019

xazax.hun added inline comments to D60507: [clang-tidy] new check: bugprone-unhandled-self-assignment.
Apr 14 2019, 7:44 AM · Restricted Project, Restricted Project, Restricted Project
xazax.hun added inline comments to D60507: [clang-tidy] new check: bugprone-unhandled-self-assignment.
Apr 14 2019, 6:34 AM · Restricted Project, Restricted Project, Restricted Project

Apr 11 2019

xazax.hun accepted D46421: [analyzer][CrossTU] Extend CTU to VarDecls with initializer.

I have one question, once it is resolved I am fine with committing this.

Apr 11 2019, 2:11 AM · Restricted Project

Apr 5 2019

xazax.hun added a comment to D46421: [analyzer][CrossTU] Extend CTU to VarDecls with initializer.

I cannot think of other users, so I would prefer to put it in the CTU lib for now.

Apr 5 2019, 9:23 AM · Restricted Project
xazax.hun added a comment to D46421: [analyzer][CrossTU] Extend CTU to VarDecls with initializer.

Okay so I would suggest to go ahead and commit this. Rebased it succeeds without modification.

Still leaves the open problems with the redecls. Should I add the failing test from https://reviews.llvm.org/D46421#1375147 in the same commit marked as expected to fail? Or what is the procedure here?

Apr 5 2019, 7:03 AM · Restricted Project

Apr 2 2019

xazax.hun added a comment to D58121: [analyzer][WIP] Attempt to fix traversing bindings of non-base regions in ClusterAnalysis.
In D58121#1452483, @NoQ wrote:

Mmm. I'm also pretty pinned down (it's seasonal), so i'm thinking of temporarily reverting :( until one of us gets to fixing the accidental effect on escaping, 'cause it just keeps biting us. Like, i wholeheartedly appreciate the work and i have already noticed a few times how it makes things better and loved it, it just seems to accidentally have something missing that nobody could predict, and i'll be super eager to get it back in.

Apr 2 2019, 10:34 PM · Restricted Project

Mar 27 2019

xazax.hun added inline comments to D58367: [analyzer] NFC: Improve upon the concept of BugReporterVisitor..
Mar 27 2019, 12:59 PM · Restricted Project, Restricted Project

Mar 21 2019

xazax.hun added a comment to D58121: [analyzer][WIP] Attempt to fix traversing bindings of non-base regions in ClusterAnalysis.

First of all, sorry for the inactivity regarding this patch.

Mar 21 2019, 4:27 AM · Restricted Project

Mar 18 2019

xazax.hun added a comment to D59457: [analyzer][NFC] Use capital variable names, move methods out-of-line, rename some in CheckerRegistry.

I did not check the patch yet but wanted to point out that we might not want to rush about renaming all the variables until the community decides on the coding guideline, see https://reviews.llvm.org/D59251

Mar 18 2019, 2:18 PM · Restricted Project, Restricted Project

Mar 14 2019

xazax.hun added a comment to D57860: [analyzer] Validate checker option names and values.

Did we test all the codepaths including the package level configs? If not, please add some package level config option related tests.
Otherwise the patch looks good to me after all the comments are resolved.

Mar 14 2019, 5:20 AM · Restricted Project, Restricted Project

Mar 9 2019

xazax.hun accepted D58367: [analyzer] NFC: Improve upon the concept of BugReporterVisitor..

It is an interesting idea to use this facility for trackExpressionValue. But I would expect such a mechanism to trigger quite often. I wonder if the memory consumption would increase significantly by storing a lambda for almost every binding for each path.
Right now we reclaim the memory after we finished analyzing a top-level function. If memory proves to be a problem, we could maybe reclaim memory for every non-buggy path analyzed? Of course, I prefer the simplicity of the current solution and hope that we never need to consider more complicated cleanup logic :)

Mar 9 2019, 1:15 AM · Restricted Project, Restricted Project

Feb 28 2019

xazax.hun accepted D57906: [CTU] Do not allow different CPP dialects in CTU.

LGTM! I think we should commit this as is for now but maybe adding a TODO comment to summarize the problem would be nice. Maybe we could have an isSameDialect or similar method within LangOpts, so it is harder to break this code.

Feb 28 2019, 7:07 AM · Restricted Project

Feb 25 2019

xazax.hun accepted D58604: [clang-tidy] misc-string-integer-assignment: ignore toupper/tolower.

LGTM! Thanks for working on this.

Feb 25 2019, 4:50 AM · Restricted Project, Restricted Project, Restricted Project
xazax.hun added a comment to D58606: [clang-tidy] misc-string-integer-assignment: fix false positive.

The change looks good but it would be great to have a regression test as well.

Feb 25 2019, 4:49 AM · Restricted Project, Restricted Project, Restricted Project

Feb 14 2019

xazax.hun added a comment to D50488: [Analyzer] Checker for non-determinism caused by sorting of pointer-like elements.

Reviving this now that I have some cycles to work on this.

So I tried running this on csa-testbench projects but I didn't have much success. I always run into a bunch of build/env related errors:

python run_experiments.py --config myconfig.json

15:05:20 [libcxx] Checking out project... 
[ERROR] Unknown option: json

15:05:22 [libcxx] LOC: ?.
15:05:22 [libcxx] Generating build log... 
15:05:22 [libcxx_master] Analyzing project... 
[ERROR] Traceback (most recent call last):
  File "/local/mnt/workspace/mgrang/comm_analyzer/CodeChecker/cc_bin/CodeChecker.py", line 20, in <module>
    from shared.ttypes import RequestFailed
ImportError: No module named shared.ttypes
Feb 14 2019, 2:10 AM · Restricted Project, Restricted Project

Feb 12 2019

xazax.hun updated the diff for D58121: [analyzer][WIP] Attempt to fix traversing bindings of non-base regions in ClusterAnalysis.
  • Fix test failures.
Feb 12 2019, 8:53 AM · Restricted Project
xazax.hun added a comment to D57230: [analyzer] Toning down invalidation a bit.

Experimental patch is up in https://reviews.llvm.org/D58121
Unfortunately, it is not perfect yet.

Feb 12 2019, 7:26 AM · Restricted Project, Restricted Project
xazax.hun created D58121: [analyzer][WIP] Attempt to fix traversing bindings of non-base regions in ClusterAnalysis.
Feb 12 2019, 7:26 AM · Restricted Project

Feb 11 2019

xazax.hun added a comment to D57230: [analyzer] Toning down invalidation a bit.

I think I might have a theory, but I would like to discuss it as I am not familiar with the internals bindings.

Feb 11 2019, 9:20 AM · Restricted Project, Restricted Project
xazax.hun accepted D57890: [analyzer] Fix in self assignment checker.

Just wanted to make sure I get it right. You did not add a test since it is only reproducible with an internal (non-upstreamed) checker. Since the change is trivial, I think it is ok to commit this without a test.

Feb 11 2019, 3:20 AM · Restricted Project
xazax.hun accepted D57922: [analyzer] Insert checker options into AnalyzerOption::ConfigTable.

LG!

Feb 11 2019, 3:20 AM · Restricted Project, Restricted Project
xazax.hun added a comment to D57855: [analyzer][NFC] Reimplement checker options.

We have examples/analyzer-plugin. I would prefer to add an example option to the example plugin so people do see how to do this when they are registering a checker from a plugin.

Feb 11 2019, 3:16 AM · Restricted Project
xazax.hun accepted D57579: [analyzer][WIP] Enable subcheckers to possess checker options.

LGTM! But having a lit test that fails before and passes after would be great.

Feb 11 2019, 2:33 AM · Restricted Project

Feb 7 2019

xazax.hun added a comment to D57230: [analyzer] Toning down invalidation a bit.
In D57230#1387834, @NoQ wrote:

There seem to be a few regressions - weird memory leaks of inner objects in C++ destructors. Trying to investigate/reproduce.

Feb 7 2019, 1:48 AM · Restricted Project, Restricted Project

Feb 1 2019

xazax.hun accepted D57619: [analyzer] Canonicalize variable declarations in VarRegion objects..

Looks good, nice catch. :)

Feb 1 2019, 3:10 PM · Restricted Project, Restricted Project
xazax.hun added a comment to D46421: [analyzer][CrossTU] Extend CTU to VarDecls with initializer.

Thank you for working on this!

Feb 1 2019, 6:54 AM · Restricted Project
Herald added a project to D46421: [analyzer][CrossTU] Extend CTU to VarDecls with initializer: Restricted Project.
In D46421#1374807, @NoQ wrote:

At the same time, i don't have any test cases for the actual change in behavior that such canonicalization causes. If the test case that you had in mind is indeed demonstrating this problem, i'd love to have it. If it turns out that your test case doesn't allow us to demonstrate the problem without CTU, then probably it has something to do with ASTImporter accidentally canonicalizing the the declaration in DeclRefExpr more rarely than the vanilla AST.

This seems unrelated to CTU. The following subset of my test demonstrates this:

// RUN: %clang_analyze_cc1 -analyzer-checker=core,debug.ExprInspection -verify %s

void clang_analyzer_eval(int);

extern const int extInt;

int main()
{
    clang_analyzer_eval(extInt == 2); // expected-warning{{TRUE}}
}

extern const int extInt = 2;
Breakpoint 1, (anonymous namespace)::RegionStoreManager::getBindingForVar (this=0xa7b420, B=..., R=0xa7d348)
    at /data/work/commitllvm/llvm/tools/clang/lib/StaticAnalyzer/Core/RegionStore.cpp:1948
1948        if (const Expr *Init = VD->getAnyInitializer()) {
(gdb) p VD->getInit()
$1 = (const clang::Expr *) 0x0
(gdb) p VD->getAnyInitializer()
$2 = (const clang::Expr *) 0xa4b630
Feb 1 2019, 6:36 AM · Restricted Project
xazax.hun added inline comments to D57579: [analyzer][WIP] Enable subcheckers to possess checker options.
Feb 1 2019, 6:32 AM · Restricted Project

Jan 29 2019

xazax.hun added a comment to D57230: [analyzer] Toning down invalidation a bit.

Thanks for all the reviews. Do you have any preference about the spelling of the annotation mentioned in the description?

Jan 29 2019, 2:32 AM · Restricted Project, Restricted Project

Jan 28 2019

xazax.hun added a comment to D57230: [analyzer] Toning down invalidation a bit.

I tried to creduce one file where the result differed and this is the result:

typedef struct {
  int a;
  int b
} c;
d;
e(c *f) {
  d < f->a;
  c g;
  h(&g.b);
  e(&g);
}
Jan 28 2019, 8:18 AM · Restricted Project, Restricted Project

Jan 26 2019

xazax.hun added a comment to D57230: [analyzer] Toning down invalidation a bit.
In D57230#1372523, @NoQ wrote:
In D57230#1372275, @NoQ wrote:

Do you have success reducing false positives using creduce? My problem usually is that we cannot tell if a reduction rendered a false positive into a true positive.

False positives - no. Improvements and regressions - totally! Just run two different clangs in the creduce test and check that there's a difference in results.

Jan 26 2019, 11:23 AM · Restricted Project, Restricted Project
xazax.hun updated the diff for D57230: [analyzer] Toning down invalidation a bit.
  • Added some tests
Jan 26 2019, 7:46 AM · Restricted Project, Restricted Project
xazax.hun added a comment to D57230: [analyzer] Toning down invalidation a bit.
In D57230#1372275, @NoQ wrote:

Could you share reproducible examples for these, probably in the form of FIXME tests? Given that they are "regressions", they are easy to creduce down to a small repro by using the test "there is still a change in behavior on this file".

Jan 26 2019, 7:43 AM · Restricted Project, Restricted Project

Jan 25 2019

xazax.hun updated the summary of D57230: [analyzer] Toning down invalidation a bit.
Jan 25 2019, 4:46 AM · Restricted Project, Restricted Project
xazax.hun created D57230: [analyzer] Toning down invalidation a bit.
Jan 25 2019, 4:42 AM · Restricted Project, Restricted Project

Jan 21 2019

xazax.hun added a comment to D35068: [analyzer] Detect usages of unsafe I/O functions.

To add an analogy, Clang Tidy will not require C++ Core Guidelines related checks to be evaluated on projects that are not following the guidelines as the results are meaningless for those projects.

Jan 21 2019, 1:07 AM · Restricted Project
xazax.hun added a comment to D35068: [analyzer] Detect usages of unsafe I/O functions.

I've evaluated this checker on LLVM+Clang, there were only a few (about 15) warnings, because of the C11 flag check at the beginning of the checker body. However, if this check was removed, number of the warnings would be increased significantly. I wouldn't say the findings were real security issues, most of the warnings were about usages of deprecated functions, which has not been considered unsecure (but which may cause problems if the code is modified in an improper way in the future).

My problem is that LLVM+Clang isn't really a C (nor a C11) project, and I think judging this checker on it is a little misleading. Could you please test it on some C11 projects? I think tmux uses C11.

Edit: it doesn't, but CMake is mostly a C project and it does!

Jan 21 2019, 1:05 AM · Restricted Project

Jan 17 2019

xazax.hun accepted D35068: [analyzer] Detect usages of unsafe I/O functions.

Any objections to commit this?
I think this is quiet coding guideline specific check which is useful for a set of security critical projects. As this is an opt in kind of check, I think it does no harm to have it upstream.

Jan 17 2019, 3:10 AM · Restricted Project

Jan 16 2019

xazax.hun accepted D56632: [analyzer] Track region liveness only through base regions..

Thanks, LGTM! It is interesting to see if we need to traverse all the super regions in scanReachableSymbols, but if we need to change something there, I would prefer that to be in a separate patch.
If visiting the whole super region chain proved to be redundant I would recommend removing it for clarity regardless of having a performance impact.

Jan 16 2019, 3:59 AM

Jan 14 2019

xazax.hun added a comment to D56632: [analyzer] Track region liveness only through base regions..

I really like all this detective work and it would be sad to have it forgotten. I would love to see some of your comments in the documentation of symbol reaper.
More specifically:

Jan 14 2019, 8:34 AM

Jan 8 2019

xazax.hun accepted D56441: [analyzer][CrossTU][NFC] Generalize to external definitions instead of external functions.

Some nits inline. Otherwise looks good to me.

Jan 8 2019, 7:15 AM

Dec 18 2018

xazax.hun added a comment to D55804: [analyzer] C++17: Fix leak false positives when an object with destructor is returned from the top frame..

Is there any downsides for using symbolic region for the construction target? For me that would make perfect sense, since this is often modelled by passing the address of the target into the callee. The programmer could do RVO like thing by hand, so modeling automatic and manual RVO the same way would be the least surprising in my opinion.

Dec 18 2018, 12:46 AM

Dec 14 2018

xazax.hun added a comment to D46421: [analyzer][CrossTU] Extend CTU to VarDecls with initializer.

Sorry for the delay. The changes are looking good to me, although I think it might be worth to split this up into two patch, one NFC with the renaming, and one that actually introduces the changes.

Dec 14 2018, 5:31 AM · Restricted Project
xazax.hun created D55697: [analyzer] Assume that we always have a SubEngine available.
Dec 14 2018, 2:02 AM · Restricted Project

Dec 7 2018

xazax.hun accepted D55131: [CTU] Add more lit tests and better error handling.

LG!

Dec 7 2018, 7:38 AM
xazax.hun accepted D55134: [CTU] Add triple/lang mismatch handling.

LG!

Dec 7 2018, 7:27 AM
xazax.hun accepted D55135: [CTU][Analyzer]Add DisplayCTUProgress analyzer switch.

While Static Analyzer is the only client of CTU library at the moment, we might have more in the future. I would not use the phrase ANALYZE in the log message. Once this is resolved the rest looks good.

Dec 7 2018, 5:13 AM

Dec 6 2018

xazax.hun added a comment to D55388: [analyzer] MoveChecker Pt.8: Add checks for dereferencing a smart pointer after move..

Hm. I wonder if it would also make sense to model e.g. the get method to return nullptr for moved from smart ptrs. This could help null dereference checker and also aid false path prunning.

Dec 6 2018, 10:55 PM

Dec 5 2018

xazax.hun accepted D55280: [CTU] Make loadExternalAST return with non nullptr on success.

LG!

Dec 5 2018, 2:49 AM

Dec 4 2018

xazax.hun added inline comments to D55134: [CTU] Add triple/lang mismatch handling.
Dec 4 2018, 10:34 AM
xazax.hun added a comment to D55135: [CTU][Analyzer]Add DisplayCTUProgress analyzer switch.

Having an analyzer config option makes sense.

Dec 4 2018, 7:07 AM
xazax.hun requested changes to D55134: [CTU] Add triple/lang mismatch handling.
Dec 4 2018, 7:06 AM
xazax.hun accepted D55133: [CTU] Add statistics.

The code LGTM! I am not good at wordsmithing, but if the descriptions of the statistics are not clear enough, I agree that they should be rephrased.

Dec 4 2018, 7:00 AM
xazax.hun accepted D55132: [CTU] Add asserts to protect invariants.
Dec 4 2018, 5:56 AM
xazax.hun accepted D55129: [CTU] Eliminate race condition in CTU lit tests.

After the review comment is resolved, the rest LGTM!

Dec 4 2018, 5:53 AM

Dec 3 2018

xazax.hun updated the diff for D52984: [analyzer] Checker reviewer's checklist.
  • Addressed further comments.
Dec 3 2018, 7:29 AM · Restricted Project

Nov 27 2018

xazax.hun accepted D53280: [analyzer] Emit an error for invalid -analyzer-config inputs.

Overall looks good to me, some minor comments inline.

Nov 27 2018, 8:51 AM

Nov 23 2018

xazax.hun accepted D52795: [analyzer][PlistMacroExpansion] Part 3.: Macro arguments are expanded.

Some minor comment inline. Otherwise looks good.

Nov 23 2018, 5:42 AM

Nov 17 2018

xazax.hun added a comment to D54557: [analyzer] MoveChecker Pt.2: Restrict the warning to STL objects and locals..
In D54557#1300654, @NoQ wrote:

It would be great to have a way to extend the list of (possibly non-stl) types to check. But I do understand that the analyzer does not have a great way to set such configuration options right now.

Do you envision room for another attribute here? I.e., a class attribute that says "this object is always unsafe to use after move, unless a method annotated with reinitializes is called"?

Nov 17 2018, 2:31 AM

Nov 15 2018

xazax.hun accepted D54557: [analyzer] MoveChecker Pt.2: Restrict the warning to STL objects and locals..

It would be great to have a way to extend the list of (possibly non-stl) types to check. But I do understand that the analyzer does not have a great way to set such configuration options right now.

Nov 15 2018, 4:50 AM
xazax.hun accepted D54556: [analyzer] MoveChecker Pt.1: Give MisusedMovedObject checker a more consistent name..

Looks good. Do we plan to detect problems other than use after move? Maybe it would be worth to synchronize with the tidy checker name use-after-move or is it going to cause more confusion?

Nov 15 2018, 4:45 AM

Nov 12 2018

xazax.hun added a comment to D54429: [analyzer] Creating standard Sphinx documentation.

I do like the idea of moving the Clang Static Analyzer documentation to where the rest of the tools are documented. I believe the original reason the analyzer had a separate homepage is due to it was off by default in clang at the beginning and users downloaded it from the separate page.

Nov 12 2018, 8:41 AM · Restricted Project
xazax.hun updated the diff for D52984: [analyzer] Checker reviewer's checklist.
  • Use the term checker instead of check.
Nov 12 2018, 4:57 AM · Restricted Project

Nov 10 2018

xazax.hun added inline comments to D52984: [analyzer] Checker reviewer's checklist.
Nov 10 2018, 7:14 AM · Restricted Project
xazax.hun updated the diff for D52984: [analyzer] Checker reviewer's checklist.
  • Move the checklist up before additional info in the HTML file.
  • Fix minor nits.
  • Add missing bullet points (thanks @Szelethus for noticing)
Nov 10 2018, 7:11 AM · Restricted Project
xazax.hun added inline comments to D52984: [analyzer] Checker reviewer's checklist.
Nov 10 2018, 6:52 AM · Restricted Project

Nov 6 2018

xazax.hun added a comment to D52795: [analyzer][PlistMacroExpansion] Part 3.: Macro arguments are expanded.

I would love to see a test with deeper macro in macro expansion and larger number of arguments, with some of the arguments unused. Some minor nits inline, otherwise looks good.

Nov 6 2018, 1:30 AM

Nov 2 2018

xazax.hun updated the diff for D52984: [analyzer] Checker reviewer's checklist.

This new version based on the bullets by NoQ. I also included some additional ones from other lists and added some new ones, e.g. the NamedDecl::getName will fail if the name of the decl is not a single token. I also reordered a bit. Advice that is more advanced and guidelines that are less likely to be violated should be closer to the bottom of the list.

Nov 2 2018, 7:31 AM · Restricted Project
xazax.hun accepted D53995: [analyzer] Drastically simplify the tblgen files used for checkers.

LGTM, but let's wait for @NoQ before committing.

Nov 2 2018, 5:09 AM
xazax.hun added a comment to D52790: [analyzer][PlistMacroExpansion] New flag to convert macro expansions to events.

I also would like to see in a tool how this would look like as an event before committing :) Just a sanity check to make sure this feature makes sense. Could you post a screenshot of CodeChecker or any other tool using this feature?

Nov 2 2018, 5:04 AM
xazax.hun accepted D52986: [analyzer][PlistMacroExpansion] Part 4.: Support for __VA_ARGS__.

One question otherwise looks good.

Nov 2 2018, 5:03 AM
xazax.hun accepted D52988: [analyzer][PlistMacroExpansion] Part 5.: Support for # and ##.
Nov 2 2018, 4:58 AM
xazax.hun added inline comments to D52795: [analyzer][PlistMacroExpansion] Part 3.: Macro arguments are expanded.
Nov 2 2018, 4:56 AM
xazax.hun accepted D52794: [analyzer][PlistMacroExpansion] Part 2.: Retrieving the macro name and primitive expansion.

One question and one nit otherwise looks good. Feel free to commit once those are resolved without another round of reviews.

Nov 2 2018, 4:49 AM
xazax.hun added inline comments to D53692: [analyzer] Evaluate all non-checker config options before analysis.
Nov 2 2018, 4:34 AM

Nov 1 2018

xazax.hun updated the diff for D53979: [analyzer][CTU] Correctly signal in the function index generation tool if there was an error.
  • Remove yet another dependency from the tool that is no longer used.
Nov 1 2018, 8:38 AM
xazax.hun created D53979: [analyzer][CTU] Correctly signal in the function index generation tool if there was an error.
Nov 1 2018, 8:35 AM

Oct 31 2018

xazax.hun added a comment to D52794: [analyzer][PlistMacroExpansion] Part 2.: Retrieving the macro name and primitive expansion.

Please add a test case where a bug path goes through a macro definition and this macro is undefed at the end of the translation unit.

Oct 31 2018, 7:16 AM
xazax.hun accepted D52742: [analyzer][PlistMacroExpansion] Part 1.: New expand-macros flag.

LGTM! Thanks, I think it is much easier to understand what is going on this way.

Oct 31 2018, 6:51 AM

Oct 30 2018

xazax.hun accepted D52730: [analyzer] ConversionChecker: handle floating point.

LGTM!
I only wonder if this should be on by default or guarded by a config option. I do not have strong feelings about any of the options though.

Oct 30 2018, 5:27 AM

Oct 29 2018

xazax.hun added inline comments to D53810: [analyzer][NFC] Refactor PlistDiagnostics to use a class instead of passing 9 parameters around.
Oct 29 2018, 8:20 AM

Oct 22 2018

xazax.hun added inline comments to D53277: [analyzer][NFC] Collect all -analyzer-config options in a .def file.
Oct 22 2018, 2:43 AM
xazax.hun added a comment to D53280: [analyzer] Emit an error for invalid -analyzer-config inputs.

I agree with NoQ. Forward and backward compatibility might be important for CodeChecker as well.
But I wonder if it make sense to have analyzer-config compatibility mode on a per config basis?
E.g., if we have two configs:

  • One did not exist in earlier clang versions, but a tool (like CodeChecker) would like to pass this to the analyzer without doing a version check first. Passing this in a compatibility mode makes sense. This could be the regural -analyzer-config
  • The second option also did not exist in earlier clang versions, but we do not want to support those versions. In the case passing this config in a more strict mode makes sense. This could be something like -analyzer-config-strict.
Oct 22 2018, 2:39 AM
xazax.hun added a comment to D53296: [analyzer] New flag to print all -analyzer-config options.

Overall looks good, minor comments inline.

Oct 22 2018, 2:25 AM
xazax.hun added a comment to D53483: [analyzer] Restrict AnalyzerOptions' interface so that non-checker objects have to be registered.

Overall looks good if the community agrees with the directions. Some comments inline.

Oct 22 2018, 2:08 AM

Oct 18 2018

xazax.hun added inline comments to D52730: [analyzer] ConversionChecker: handle floating point.
Oct 18 2018, 2:10 AM

Oct 10 2018

xazax.hun added a comment to D53069: [analyzer][www] Update avaible_checks.html.

I am not sure what to do about implcit checks. Those are probably should never be turned on or off by the user, but they should be on or off by default based on the set of checks the user enabled and the platform she is using. Thus, I am perfectly ok with the implicit_checks.html only being accessible from the checker development manual. Maybe we should extend the checker list with a notice that the user should never disable the core checks.

Oct 10 2018, 3:01 AM

Oct 9 2018

xazax.hun added inline comments to D52742: [analyzer][PlistMacroExpansion] Part 1.: New expand-macros flag.
Oct 9 2018, 2:16 AM
xazax.hun added inline comments to D52984: [analyzer] Checker reviewer's checklist.
Oct 9 2018, 12:46 AM · Restricted Project
xazax.hun added a comment to D52983: [analyzer] Support Reinitializes attribute in MisusedMovedObject check.
In D52983#1258466, @NoQ wrote:

Yay, these look useful. Is there also an attribute for methods that should never be called on a 'moved-from' object?

Oct 9 2018, 12:27 AM · Restricted Project

Oct 8 2018

xazax.hun updated the diff for D52984: [analyzer] Checker reviewer's checklist.
  • Added the ideas from Kristof.
Oct 8 2018, 7:42 AM · Restricted Project
xazax.hun created D52984: [analyzer] Checker reviewer's checklist.
Oct 8 2018, 6:46 AM · Restricted Project
xazax.hun created D52983: [analyzer] Support Reinitializes attribute in MisusedMovedObject check.
Oct 8 2018, 6:28 AM · Restricted Project
xazax.hun added inline comments to D51866: [analyzer][UninitializedObjectChecker] New flag to ignore guarded uninitialized fields.
Oct 8 2018, 2:41 AM · Restricted Project
xazax.hun added inline comments to D51866: [analyzer][UninitializedObjectChecker] New flag to ignore guarded uninitialized fields.
Oct 8 2018, 2:35 AM · Restricted Project