Page MenuHomePhabricator

gamesh411 (Endre Fülöp)
User

Projects

User does not belong to any projects.

User Details

User Since
Dec 19 2016, 5:58 AM (148 w, 1 h)

Recent Activity

Aug 14 2019

gamesh411 added a comment to D66049: [analyzer] PR41729: Fix some false positives and improve strlcat and strlcpy modeling.

Nice improvements! It was a good catch that a substantial part of the checker could be cut out. Accurate modelling of CString and related API-s is really important, and this is a good step in that direction.
I would test this on a larger codebase as well before committing, but LGTM otherwise.

Aug 14 2019, 3:00 AM · Restricted Project
gamesh411 accepted D66014: [analyzer] Avoid unnecessary enum range check on LValueToRValue casts.

@chrish_ericsson_atx Thanks for fixing this! Your help is much appreciated :)

Aug 14 2019, 2:17 AM · Restricted Project, Restricted Project

Aug 6 2019

gamesh411 accepted D65573: Add User docs for ASTImporter.
Aug 6 2019, 1:32 AM · Restricted Project, Restricted Project

Aug 5 2019

gamesh411 committed rL367829: [CrossTU][NFCI] Refactor loadExternalAST function.
[CrossTU][NFCI] Refactor loadExternalAST function
Aug 5 2019, 4:06 AM
gamesh411 closed D64753: [CrossTU][NFCI] Refactor loadExternalAST function.
Aug 5 2019, 4:06 AM · Restricted Project, Restricted Project
gamesh411 updated the diff for D64753: [CrossTU][NFCI] Refactor loadExternalAST function.
  • Remove unused member Limit
  • Rebase to current master
Aug 5 2019, 3:56 AM · Restricted Project, Restricted Project

Aug 2 2019

gamesh411 added a comment to D65573: Add User docs for ASTImporter.

Lovely documentation with practical use-cases!
I left a few inline remarks.
Also wouldn't it be nice to have a section which introduces the -ast-merge command-line option. It would be helpful to see an example where a PCH is dumped and merged into another TU. You could mention, that this can be used to debug ASTImporter functionality.
Cheers!

Aug 2 2019, 5:28 AM · Restricted Project, Restricted Project

Aug 1 2019

gamesh411 updated the diff for D64753: [CrossTU][NFCI] Refactor loadExternalAST function.

Specify the exact meaning of successful storage

Aug 1 2019, 5:27 AM · Restricted Project, Restricted Project

Jul 30 2019

gamesh411 added a comment to D64753: [CrossTU][NFCI] Refactor loadExternalAST function.

Updated the revision.
I find this solution definitely more compact with responsibilities more separated. One more thing that comes to mind is that maybe the whole explicit passing of CTUDir and IndexName arguments is a bit verbose. What are your thoughts about these being injected earlier than the query operations (eg.: in getASTUnitForFunction and getFileForFunction)?

Jul 30 2019, 1:27 AM · Restricted Project, Restricted Project
gamesh411 updated the diff for D64753: [CrossTU][NFCI] Refactor loadExternalAST function.
  • Merge RAII class
  • Update comments
Jul 30 2019, 1:22 AM · Restricted Project, Restricted Project

Jul 24 2019

gamesh411 added a comment to D64753: [CrossTU][NFCI] Refactor loadExternalAST function.

Thanks for pointing out these issues. Most of them are agreed. Merging the RAII counter with the threshold checker class, however, does not seem like a good decision for me. What would be the benefits of merging the two?

Jul 24 2019, 2:48 AM · Restricted Project, Restricted Project

Jul 23 2019

gamesh411 updated the diff for D64753: [CrossTU][NFCI] Refactor loadExternalAST function.

Too much autoformat fixed

Jul 23 2019, 3:36 PM · Restricted Project, Restricted Project
gamesh411 updated the diff for D64753: [CrossTU][NFCI] Refactor loadExternalAST function.

Refactor functionality into local classes

Jul 23 2019, 3:24 PM · Restricted Project, Restricted Project
gamesh411 abandoned D59934: Compare SourceLocations from different TUs by FileID.

32f220c5fbe5 is the more sophisticated solution to the problem.

Jul 23 2019, 2:51 AM · Restricted Project
gamesh411 abandoned D27918: [analyzer] OStreamChecker.

There are multiple new additions to stream formatters, and this patch is way too old. I may consider creating a new checker like this with an extended feature set later.

Jul 23 2019, 2:47 AM
gamesh411 added inline comments to D61848: [ZORG] Add new builder for CTU analysis.
Jul 23 2019, 2:33 AM
gamesh411 updated the diff for D61848: [ZORG] Add new builder for CTU analysis.
  • Add implementation rationale, fix forgotten build-step
Jul 23 2019, 2:32 AM

Jul 15 2019

gamesh411 created D64753: [CrossTU][NFCI] Refactor loadExternalAST function.
Jul 15 2019, 9:27 AM · Restricted Project, Restricted Project
gamesh411 abandoned D64748: [CTU] Refactor threshold checking.
Jul 15 2019, 9:14 AM · Restricted Project
gamesh411 updated the diff for D64748: [CTU] Refactor threshold checking.

Incremental change

Jul 15 2019, 9:12 AM · Restricted Project
gamesh411 updated the diff for D64748: [CTU] Refactor threshold checking.

Incremental change

Jul 15 2019, 9:12 AM · Restricted Project
gamesh411 updated the diff for D64748: [CTU] Refactor threshold checking.

Incremental change

Jul 15 2019, 9:12 AM · Restricted Project
gamesh411 updated the diff for D64748: [CTU] Refactor threshold checking.

Incremental change

Jul 15 2019, 9:12 AM · Restricted Project
gamesh411 updated the diff for D64748: [CTU] Refactor threshold checking.

Incremental change

Jul 15 2019, 9:12 AM · Restricted Project
gamesh411 abandoned D64749: Refactor CTUIndex lazy initialization.
Jul 15 2019, 9:04 AM · Restricted Project
gamesh411 created D64749: Refactor CTUIndex lazy initialization.
Jul 15 2019, 8:55 AM · Restricted Project
gamesh411 created D64748: [CTU] Refactor threshold checking.
Jul 15 2019, 8:55 AM · Restricted Project

Jul 8 2019

gamesh411 committed rL365314: [analyzer] Add analyzer option to limit the number of imported TUs.
[analyzer] Add analyzer option to limit the number of imported TUs
Jul 8 2019, 5:37 AM
gamesh411 closed D59798: [analyzer] Add analyzer option to limit the number of imported TUs.
Jul 8 2019, 5:37 AM · Restricted Project, Restricted Project

Jul 5 2019

gamesh411 committed rL365189: [NFC] Test commit access.
[NFC] Test commit access
Jul 5 2019, 5:03 AM

Jul 3 2019

gamesh411 added a comment to D61848: [ZORG] Add new builder for CTU analysis.

I have applied the fixes, which seemed fitting. Also see my reasoning behind the command-prefix implementation inline.

Jul 3 2019, 6:50 AM
gamesh411 updated the diff for D61848: [ZORG] Add new builder for CTU analysis.
  • Remove redundant parameter handling
  • Pass env keyword argument to every ShellCommand step
  • Use RemoveDirectory where applicable
Jul 3 2019, 6:38 AM
gamesh411 added a comment to D61848: [ZORG] Add new builder for CTU analysis.

@gkistanova Your review is very much appreciated!
I have answered the inline comments, and I am currently applying the suggested fixes. After short testing, I will update this revision.

Jul 3 2019, 3:57 AM
gamesh411 updated the diff for D59798: [analyzer] Add analyzer option to limit the number of imported TUs.

Rebase again

Jul 3 2019, 12:21 AM · Restricted Project, Restricted Project

Jul 2 2019

gamesh411 abandoned D64120: Rebase onto current master.

Missed arcanist diff. Disregard this revision.

Jul 2 2019, 11:44 PM · Restricted Project
gamesh411 updated the diff for D59798: [analyzer] Add analyzer option to limit the number of imported TUs.

Rebase onto current master

Jul 2 2019, 11:44 PM · Restricted Project, Restricted Project
gamesh411 created D64120: Rebase onto current master.
Jul 2 2019, 11:40 PM · Restricted Project

May 30 2019

gamesh411 added a comment to D61848: [ZORG] Add new builder for CTU analysis.

Friendly ping @gkistanova. What do you think about this modification? Also, should we add our buildslave to the silent (if I remember correctly it is called staging), or the reporting buildmaster? Thanks!

May 30 2019, 5:25 AM

May 20 2019

gamesh411 added a reviewer for D61848: [ZORG] Add new builder for CTU analysis: martong.
May 20 2019, 1:00 AM

May 13 2019

gamesh411 updated the diff for D59798: [analyzer] Add analyzer option to limit the number of imported TUs.

Revert unnecessary clang-formating of AnalysisConsumer.cpp

May 13 2019, 9:30 AM · Restricted Project, Restricted Project
gamesh411 added a comment to D59798: [analyzer] Add analyzer option to limit the number of imported TUs.

I could greatly simplify the API of getCrossTUDefinition by injecting the threshold value in the constructor. A minor drawback with this approach is that testing code is a bit more complicated, as I had to patch the CompilerInstance to override the AnalyzerOption value for CTUImportThreshold. Thanks for the suggestion!

May 13 2019, 9:24 AM · Restricted Project, Restricted Project
gamesh411 updated the diff for D59798: [analyzer] Add analyzer option to limit the number of imported TUs.

Apply review suggestions by Xazax

May 13 2019, 9:17 AM · Restricted Project, Restricted Project
gamesh411 retitled D61848: [ZORG] Add new builder for CTU analysis from Add new builder for CTU analysis to [ZORG] Add new builder for CTU analysis.
May 13 2019, 3:18 AM
gamesh411 created D61848: [ZORG] Add new builder for CTU analysis.
May 13 2019, 3:12 AM

Mar 31 2019

gamesh411 added a comment to D59934: Compare SourceLocations from different TUs by FileID.

Hmm. Is your clang recent enough to contain @bruntib's patch D57892? Is it possible that this patch solves the same issue? With this patch applied, are you able to get a macro expansions from a different TU in the plist output, or does this patch only resolve the regression?

Mar 31 2019, 6:30 AM · Restricted Project
gamesh411 added a comment to D59934: Compare SourceLocations from different TUs by FileID.

I would still like to learn more about this issue. I am somewhat afraid that the our macro expansion is faulty. Can you provide a stacktrace maybe?

Mar 31 2019, 3:47 AM · Restricted Project

Mar 30 2019

gamesh411 added a comment to D59934: Compare SourceLocations from different TUs by FileID.

Test?

Mar 30 2019, 4:56 PM · Restricted Project
gamesh411 added a comment to D59934: Compare SourceLocations from different TUs by FileID.

Just have a bit more context, I have the following information from a debug session at the execution point of the unreachable:

Mar 30 2019, 3:45 PM · Restricted Project
gamesh411 added a comment to D59934: Compare SourceLocations from different TUs by FileID.

Hi!

This issue came up during the generation BugReports of BugPaths containing macro-expansions, where the spelling location and expansion locations were in different files.
With this change, we make such SourceLocations comparable by their FileIDs.

Do you mean regular macro expansions or the one we're generating in the plist output via -analyzer-config expand-macros=true?

Mar 30 2019, 3:41 PM · Restricted Project

Mar 28 2019

gamesh411 added reviewers for D59934: Compare SourceLocations from different TUs by FileID: aaron.ballman, a_sidorin, xazax.hun.
Mar 28 2019, 7:54 AM · Restricted Project
gamesh411 added a comment to D59934: Compare SourceLocations from different TUs by FileID.

This issue came up during the generation BugReports of BugPaths containing macro-expansions, where the spelling location and expansion locations were in different files.
With this change, we make such SourceLocations comparable by their FileIDs.

Mar 28 2019, 7:53 AM · Restricted Project
gamesh411 created D59934: Compare SourceLocations from different TUs by FileID.
Mar 28 2019, 7:40 AM · Restricted Project
gamesh411 added a comment to D59761: [ASTImporter] Convert ODR diagnostics inside ASTImporter implementation.

ping @a_sidorin @shafik

Mar 28 2019, 7:22 AM · Restricted Project, Restricted Project
gamesh411 added a comment to D58897: [ASTImporter] Make ODR error handling configurable.

ping @a_sidorin

Mar 28 2019, 7:18 AM · Restricted Project
gamesh411 retitled D59798: [analyzer] Add analyzer option to limit the number of imported TUs from Add analyzer option to limit the number of imported TUs to [analyzer] Add analyzer option to limit the number of imported TUs.
Mar 28 2019, 12:41 AM · Restricted Project, Restricted Project
gamesh411 retitled D59798: [analyzer] Add analyzer option to limit the number of imported TUs from [WIP] Add analyzer option to limit the number of imported TUs to Add analyzer option to limit the number of imported TUs.
Mar 28 2019, 12:35 AM · Restricted Project, Restricted Project
gamesh411 updated the diff for D59798: [analyzer] Add analyzer option to limit the number of imported TUs.

Updated option handling location to use AnalyzerOptions instead of CC1

Mar 28 2019, 12:32 AM · Restricted Project, Restricted Project

Mar 25 2019

gamesh411 retitled D59761: [ASTImporter] Convert ODR diagnostics inside ASTImporter implementation from [ASTImporter] Covert ODR diagnostics inside ASTImporter implementation to [ASTImporter] Convert ODR diagnostics inside ASTImporter implementation.
Mar 25 2019, 2:02 PM · Restricted Project, Restricted Project
gamesh411 retitled D59798: [analyzer] Add analyzer option to limit the number of imported TUs from Add analyzer option to limit the number of imported TUs to [WIP] Add analyzer option to limit the number of imported TUs.
Mar 25 2019, 1:58 PM · Restricted Project, Restricted Project
gamesh411 created D59798: [analyzer] Add analyzer option to limit the number of imported TUs.
Mar 25 2019, 1:42 PM · Restricted Project, Restricted Project
gamesh411 added a comment to D59761: [ASTImporter] Convert ODR diagnostics inside ASTImporter implementation.

During CTU analysis, not only StructuralEquivalence but the main implementation of ASTImporter can also emit ODR-related diagnostics. After some consideration, I have chosen not to make these dependent on a switch, as ASTImporter is not nearly as widely used as StructuralEquivalence (thru Sema), and it would also complicate the code unnecessarily.
What do you think?

Mar 25 2019, 4:28 AM · Restricted Project, Restricted Project
gamesh411 added a child revision for D58897: [ASTImporter] Make ODR error handling configurable: D59761: [ASTImporter] Convert ODR diagnostics inside ASTImporter implementation.
Mar 25 2019, 4:21 AM · Restricted Project
gamesh411 added a parent revision for D59761: [ASTImporter] Convert ODR diagnostics inside ASTImporter implementation: D58897: [ASTImporter] Make ODR error handling configurable.
Mar 25 2019, 4:21 AM · Restricted Project, Restricted Project
gamesh411 updated subscribers of D59761: [ASTImporter] Convert ODR diagnostics inside ASTImporter implementation.
Mar 25 2019, 4:21 AM · Restricted Project, Restricted Project
Herald added a reviewer for D59761: [ASTImporter] Convert ODR diagnostics inside ASTImporter implementation: a.sidorin.
Mar 25 2019, 4:21 AM · Restricted Project, Restricted Project
gamesh411 added inline comments to D58897: [ASTImporter] Make ODR error handling configurable.
Mar 25 2019, 4:11 AM · Restricted Project
gamesh411 updated the diff for D58897: [ASTImporter] Make ODR error handling configurable.
  • Revert member order to original
Mar 25 2019, 4:11 AM · Restricted Project

Mar 7 2019

gamesh411 retitled D58897: [ASTImporter] Make ODR error handling configurable from Make ODR error handling configurable to [ASTImporter] Make ODR error handling configurable.
Mar 7 2019, 8:58 AM · Restricted Project

Mar 4 2019

gamesh411 added reviewers for D58897: [ASTImporter] Make ODR error handling configurable: a_sidorin, shafik.
Mar 4 2019, 5:45 AM · Restricted Project
gamesh411 added a comment to D58897: [ASTImporter] Make ODR error handling configurable.

This revision is the alternative of the abandoned D55646.
Now Sema uses the old behavior of emitting ODR errors while merging and importing is done in a more lenient way.

Mar 4 2019, 5:44 AM · Restricted Project
gamesh411 created D58897: [ASTImporter] Make ODR error handling configurable.
Mar 4 2019, 5:34 AM · Restricted Project

Feb 14 2019

gamesh411 abandoned D55646: [ASTImporter] Make ODR diagnostics warning by default.

I am creating a new revision that keeps the old handling of ODR violations the same when used by parts of the Sema, but emit warnings when used by the ASTImporter.

Feb 14 2019, 2:28 AM · Restricted Project
Herald added a project to D55646: [ASTImporter] Make ODR diagnostics warning by default: Restricted Project.

I am going to abandon this modification, as setting ODR violations as warnings, seems like a change that could have unforeseen consequences.

Feb 14 2019, 2:24 AM · Restricted Project

Feb 6 2019

gamesh411 updated the diff for D57740: [ASTImporter] Import every Decl in lambda record.

Remove unnecessary ToTU variable from test case.

Feb 6 2019, 1:41 AM · Restricted Project, Restricted Project

Feb 5 2019

gamesh411 created D57740: [ASTImporter] Import every Decl in lambda record.
Feb 5 2019, 2:41 AM · Restricted Project, Restricted Project

Jan 8 2019

gamesh411 added a comment to D55646: [ASTImporter] Make ODR diagnostics warning by default.

Ping.

Jan 8 2019, 1:53 AM · Restricted Project
gamesh411 added a comment to D55646: [ASTImporter] Make ODR diagnostics warning by default.

Hey Aleksei!
Thank you for the input! ODR violations being warnings would be beneficial from the code maintenance point of view, as we would not have to resort to duplicate some (if not most) of them as errors. There is also a flexibility advantage in the diagnostics, as warnings can be propagated to error level or suppressed, whereas errors cannot be "demoted" (AFAIK). So while I am not opposed to providing an error AND a warning for these kinds of violations, if the SEMA or other modules do not need them to be explicitly defined as errors (for I don't know... tooling support or other reasons), then it would be cleaner to only have warnings for these.

Jan 8 2019, 1:52 AM · Restricted Project

Dec 13 2018

gamesh411 added a comment to D55646: [ASTImporter] Make ODR diagnostics warning by default.

In order to be able to handle ODR-related diagnostics with command line options, these diagnostics were moved from Error category to Warning. What are your thoughts?

Dec 13 2018, 1:37 AM · Restricted Project
gamesh411 created D55646: [ASTImporter] Make ODR diagnostics warning by default.
Dec 13 2018, 1:33 AM · Restricted Project

Dec 10 2018

gamesh411 added a comment to D48866: [clang-tidy] Add incorrect-pointer-cast checker.

In my opinion, after migrating relevant test cases from D33826, this is ready.

Dec 10 2018, 2:58 AM · Restricted Project

Nov 5 2018

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

Hi!
Thanks for your reviews, although I haven't been active for some time now.
I personally do not have commit rights, so could someone else take care of it?

Nov 5 2018, 5:32 AM · Restricted Project

Aug 22 2017

gamesh411 updated the diff for D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.
Aug 22 2017, 5:19 AM · Restricted Project
gamesh411 updated the diff for D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.

I have implemented the std::transform. The previous version used std::for_each because the iterator for enum declarations was not a random access iterator, but it turned out that I can solve this problem via std::distance. Thanks for sticking to your opinion on this one, because of it I could learn something new.

Aug 22 2017, 5:16 AM · Restricted Project

Aug 20 2017

gamesh411 added a comment to D27918: [analyzer] OStreamChecker.

Ping. @NoQ would you please have a look? Thanks!

Aug 20 2017, 1:27 PM

Aug 3 2017

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

As for the the loss of precision problem, in the special case of char the size of char is known. However does the analysis have the necessary information in this stage to know the size of an int for example? I found bit-width specifying information in the llvm::Type class which is used in the code generation phase. It could be done by checking on a per type basis, but then again, it could possibly lead to false positives. Correct me if I am wrong.

Aug 3 2017, 7:07 AM · Restricted Project
gamesh411 updated the diff for D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.

Applied most of the suggested changes, thanks for all the insights!

Aug 3 2017, 6:52 AM · Restricted Project

Jul 24 2017

gamesh411 updated the diff for D27918: [analyzer] OStreamChecker.
Jul 24 2017, 10:26 AM
gamesh411 updated the diff for D27918: [analyzer] OStreamChecker.
Jul 24 2017, 10:07 AM
gamesh411 added a comment to D27918: [analyzer] OStreamChecker.

After experimentation the following AST difference between the mock and the standard library implementation still stands (which necessitates the special handling of the complex manipulators). Example:

Jul 24 2017, 9:55 AM
gamesh411 added inline comments to D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.
Jul 24 2017, 5:12 AM · Restricted Project
gamesh411 updated the diff for D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.

Fixed the naming convention issues. Also applied the suggested modifications inside the overridden checker method.

Jul 24 2017, 5:01 AM · Restricted Project

Jun 6 2017

gamesh411 updated the diff for D27918: [analyzer] OStreamChecker.

Update diff.

Jun 6 2017, 6:11 AM
gamesh411 added a comment to D27918: [analyzer] OStreamChecker.

Update diff.

Jun 6 2017, 6:04 AM

May 30 2017

gamesh411 created D33672: [analyzer] INT50-CPP. Do not cast to an out-of-range enumeration checker.
May 30 2017, 5:25 AM · Restricted Project

Feb 28 2017

gamesh411 added a comment to D27918: [analyzer] OStreamChecker.

Hello,
This checker was developed indeed with internal usage in mind. It should not necessary be added as a default checker. However I have run it on the boost-1.63.0 codebase, and there some some mildly interesting findings in examples and tests. There is also a true positive result in the core codebase.

Feb 28 2017, 4:58 AM

Dec 19 2016

gamesh411 retitled D27918: [analyzer] OStreamChecker from to OStreamChecker.
Dec 19 2016, 6:18 AM