Page MenuHomePhabricator

ZaMaZaN4iK (Alexander Zaitsev)
User

Projects

User does not belong to any projects.

User Details

User Since
May 19 2018, 9:52 AM (65 w, 3 d)

Recent Activity

Fri, Aug 9

ZaMaZaN4iK added a comment to D65912: [clang-tidy] Add new check for math constants.

... then I have a script that runs clang-tidy over all the compilation units in a compilation database

Can you share this script please? :)

Fri, Aug 9, 11:29 AM · Restricted Project, Restricted Project
ZaMaZaN4iK added a comment to D65912: [clang-tidy] Add new check for math constants.

My point regarding statistics is that the check needs to pull its own weight -- if it doesn't find many true positives, it's not of much value to a broad community, or if it has a lot of false positives, we may need to tweak the check before releasing it to the public, etc. So definitely do the implementation work, but part of that work should be testing it over large code bases and reporting back the results.

Okay. Do we have any infrastructure for doing such testing? Or I should do it manually: prepare some large codebases, run over them clang-tidy with the check and parse the result?

Fri, Aug 9, 10:37 AM · Restricted Project, Restricted Project
ZaMaZaN4iK added a comment to D65912: [clang-tidy] Add new check for math constants.

@aaron.ballman Sure. I agree with you that epsilon should be configurable. I think we can collect some statistics later. Now I am going to work on implementation and tests. Later, of course, will be good to run the check on some codebases. I will be happy to hear that we already have some infrastructure for doing stuff like this.

Fri, Aug 9, 8:02 AM · Restricted Project, Restricted Project
ZaMaZaN4iK added a comment to D65912: [clang-tidy] Add new check for math constants.

One thing I would be interested in knowing is how often the check behaves when run over some large, real-world code bases. Does it catch any true positives? Does it have false positives?

I have no such statistics for this check. But I have statistics for identical check from PVS-Studio - https://www.viva64.com/en/examples/v624/

Fri, Aug 9, 5:56 AM · Restricted Project, Restricted Project

Thu, Aug 8

ZaMaZaN4iK added a comment to D65912: [clang-tidy] Add new check for math constants.

The main reason why I've created this differential - asking to you about usefulness of this check for clang-tidy. I understand that there are a some TODO and formatting issues - it's ok for now.

Thu, Aug 8, 2:30 PM · Restricted Project, Restricted Project

Wed, Aug 7

ZaMaZaN4iK updated the diff for D65912: [clang-tidy] Add new check for math constants.
Wed, Aug 7, 5:38 PM · Restricted Project, Restricted Project
ZaMaZaN4iK created D65912: [clang-tidy] Add new check for math constants.
Wed, Aug 7, 5:27 PM · Restricted Project, Restricted Project

May 8 2019

ZaMaZaN4iK updated subscribers of D61475: Update an information about ReSharper C++ and clang-tidy custom binary integration.

@JonasToth @NoQ @Szelethus can anyone merge it?

May 8 2019, 7:35 AM · Restricted Project, Restricted Project, Restricted Project

May 7 2019

ZaMaZaN4iK added a comment to D61475: Update an information about ReSharper C++ and clang-tidy custom binary integration.

Can anyone merge it? I have no commit access

May 7 2019, 8:54 AM · Restricted Project, Restricted Project, Restricted Project

May 2 2019

ZaMaZaN4iK created D61475: Update an information about ReSharper C++ and clang-tidy custom binary integration.
May 2 2019, 6:48 PM · Restricted Project, Restricted Project, Restricted Project

Jan 7 2019

ZaMaZaN4iK added a reviewer for D56301: Enhance MakeSmartPtrCheck for work with class hierarchies: JonasToth.
Jan 7 2019, 7:03 AM

Jan 5 2019

ZaMaZaN4iK added a comment to D56301: Enhance MakeSmartPtrCheck for work with class hierarchies.

Can anyone help me with writing a checker for such code:

Jan 5 2019, 4:56 PM

Jan 4 2019

ZaMaZaN4iK added a comment to D56301: Enhance MakeSmartPtrCheck for work with class hierarchies.

@hokein Is there any policy about the question "Which changes can clang-tidy check suggest?" . Should clang-tidy check suggest only "safe" fixes and warn only in "safe" cases?

Jan 4 2019, 8:13 AM

Jan 3 2019

ZaMaZaN4iK created D56301: Enhance MakeSmartPtrCheck for work with class hierarchies.
Jan 3 2019, 4:39 PM

Nov 4 2018

ZaMaZaN4iK updated the diff for D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.

Fix using auto in case where it leads to worse readability

Nov 4 2018, 2:31 AM · Restricted Project
ZaMaZaN4iK added inline comments to D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.
Nov 4 2018, 2:28 AM · Restricted Project
ZaMaZaN4iK added inline comments to D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.
Nov 4 2018, 2:18 AM · Restricted Project
ZaMaZaN4iK added inline comments to D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.
Nov 4 2018, 2:10 AM · Restricted Project
ZaMaZaN4iK updated the diff for D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.
  1. Fix indentation in test file
  2. Return back capitalization for the checker description
Nov 4 2018, 1:56 AM · Restricted Project
ZaMaZaN4iK added inline comments to D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.
Nov 4 2018, 1:30 AM · Restricted Project

Nov 3 2018

ZaMaZaN4iK added a comment to D17386: Loop Fusion Pass.

Sorry for necroposting - what is the status of the patch? @tvvikram

Nov 3 2018, 4:56 PM
ZaMaZaN4iK abandoned D53800: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker - cloned.
Nov 3 2018, 8:38 AM

Nov 1 2018

ZaMaZaN4iK added a comment to D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.

Which other changes and/or approvals are required for merging into trunk?

Nov 1 2018, 7:19 AM · Restricted Project
ZaMaZaN4iK added a comment to D53974: [clang-tidy] new check: bugprone-too-small-loop-variable.

Hmm, i thought Clang has some warning for this, but I was wrong... Did you think to implement this check as Clang warning?

Nov 1 2018, 7:06 AM · Restricted Project

Oct 29 2018

ZaMaZaN4iK added a comment to D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.
In D33672#1279305, @NoQ wrote:

Thanks! I like where this is going. Let's land the patch and continue developing it incrementally in trunk.

The next steps for this checker are, in my opinion:

  • Do the visitor thingy that i requested in inline-311373. I think it's a necessary thing to do, but don't jump into implementing it right away: i already have some code for this that i want to share.
  • Play nicely with typedefs. For now i believe the checker ignores them because you can't cast TypedefType to EnumType. Once this is done, it will be worth it to include the name of the enum in the warning message.
  • Optimize the code using assumeInclusiveRange. Because assume is an expensive operation, i'd like to avoid doing it O(n) times for contiguous enums in which just 2 assumes are enough (or, even better, as single assumeInclusiveRange).
  • See how this checker performs on real code, fix crashes and false positives if any.
Oct 29 2018, 3:17 PM · Restricted Project
ZaMaZaN4iK added inline comments to D51949: [clang-tidy] new check 'readability-isolate-declaration'.
Oct 29 2018, 12:29 PM · Restricted Project
ZaMaZaN4iK added inline comments to D53654: [clang] Improve ctor initializer completions..
Oct 29 2018, 9:43 AM
ZaMaZaN4iK added inline comments to D53814: Allow the analyzer to output to a SARIF file.
Oct 29 2018, 9:14 AM
ZaMaZaN4iK added inline comments to D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.
Oct 29 2018, 8:18 AM · Restricted Project
ZaMaZaN4iK updated the diff for D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.

Fix typedef -> using

Oct 29 2018, 8:16 AM · Restricted Project
ZaMaZaN4iK updated the diff for D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.

Add new test for enum bit field

Oct 29 2018, 8:05 AM · Restricted Project
ZaMaZaN4iK added inline comments to D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.
Oct 29 2018, 3:26 AM · Restricted Project
ZaMaZaN4iK updated the diff for D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.

Add the reference to CERT page

Oct 29 2018, 3:23 AM · Restricted Project

Oct 28 2018

ZaMaZaN4iK updated the diff for D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.
Oct 28 2018, 4:46 PM · Restricted Project
ZaMaZaN4iK updated the diff for D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.
  1. Changed std::transform to llvm::transform
  2. Described the check in .html file
  3. Fixed RUN command for the test file
Oct 28 2018, 12:20 PM · Restricted Project
ZaMaZaN4iK commandeered D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.
Oct 28 2018, 11:14 AM · Restricted Project
ZaMaZaN4iK created D53800: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker - cloned.
Oct 28 2018, 10:58 AM

Oct 9 2018

ZaMaZaN4iK added a comment to D46027: [clang-tidy] Fix PR35824.

What is the status of the PR?

Oct 9 2018, 11:26 PM