Page MenuHomePhabricator

steakhal (Balázs Benics)
User

Projects

User does not belong to any projects.

User Details

User Since
Mar 7 2019, 1:49 AM (173 w, 5 d)

Recent Activity

Tue, Jun 28

steakhal updated subscribers of D126864: [clang] Introduce -fstrict-flex-arrays=<n> for stricter handling of flexible arrays.
Tue, Jun 28, 12:11 AM · Restricted Project, Restricted Project

Fri, Jun 24

steakhal added a comment to D128535: [analyzer] Improve loads from reinterpret-cast fields.

No runtime diff. No crashes.
8 disappeared:

  • 4 core.CallAndMessage (1st arg is uninitialized)
  • 2 alpha.deadcode.UnreachableCode (sinked before reaching it)
  • 2 core.UndefinedBinaryOperatorResult

2 new reports:

  • 1 core.UndefinedBinaryOperatorResult
  • 1 alpha.security.ArrayBound

15k+ reports preserved.

Fri, Jun 24, 11:20 AM · Restricted Project, Restricted Project
steakhal updated the summary of D128535: [analyzer] Improve loads from reinterpret-cast fields.
Fri, Jun 24, 7:53 AM · Restricted Project, Restricted Project
steakhal requested review of D128535: [analyzer] Improve loads from reinterpret-cast fields.
Fri, Jun 24, 7:52 AM · Restricted Project, Restricted Project

Tue, Jun 21

steakhal committed rGae76b2f45501: [clang-tidy][docs] Fix wrong sphinx link after… (authored by steakhal).
[clang-tidy][docs] Fix wrong sphinx link after…
Tue, Jun 21, 2:42 AM · Restricted Project, Restricted Project
steakhal committed rGd9afb8c3e8fd: [clang-tidy] cppcoreguidelines-virtual-class-destructor should ignore final… (authored by steakhal).
[clang-tidy] cppcoreguidelines-virtual-class-destructor should ignore final…
Tue, Jun 21, 2:06 AM · Restricted Project, Restricted Project
steakhal closed D126891: [clang-tidy] The check should ignore final classes.
Tue, Jun 21, 2:06 AM · Restricted Project, Restricted Project

Mon, Jun 20

steakhal added a comment to D127643: [Static Analyzer] Structured bindings to data members.

I missed this commit because it was not tagged by "[analyzer]".
What is the community preference about tagging CSA commits?

Mon, Jun 20, 2:32 AM · Restricted Project, Restricted Project

Sun, Jun 19

steakhal accepted D122150: [clang][analyzer] Add checker for bad use of 'errno'..
Sun, Jun 19, 12:57 AM · Restricted Project, Restricted Project
steakhal accepted D125400: [clang][Analyzer] Add errno state to standard functions modeling..

LGTM, good job.

Sun, Jun 19, 12:52 AM · Restricted Project, Restricted Project

Sat, Jun 18

steakhal added a comment to D127923: [Diagnostics] Accept newline and format diag opts on first line.

Thanks for updating the summary.

Sat, Jun 18, 11:36 AM · Restricted Project, Restricted Project
steakhal added inline comments to D117229: [Analyzer] Produce SymbolCast for pointer to integer cast.
Sat, Jun 18, 11:22 AM · Restricted Project, Restricted Project
steakhal accepted D126779: [analyzer] Fix assertion in simplifySymbolCast.

LGTM

Sat, Jun 18, 11:18 AM · Restricted Project, Restricted Project
steakhal accepted D128068: [analyzer] Do not emit redundant SymbolCasts.

We can't just do that check in evalCast because there are many additonal logic before we'd end up in makeNonLoc.

Sat, Jun 18, 11:15 AM · Restricted Project, Restricted Project

Fri, Jun 17

steakhal accepted D127277: [clang][analyzer] Fix StdLibraryFunctionsChecker 'mkdir' return value..

It feels like the parent revision is not correct.
Land it.

Fri, Jun 17, 10:43 AM · Restricted Project, Restricted Project

Thu, Jun 16

steakhal added a comment to D125400: [clang][Analyzer] Add errno state to standard functions modeling..

In the describeErrnoCheckState() the Errno_MustBeChecked is uncovered by tests.

Thu, Jun 16, 10:26 AM · Restricted Project, Restricted Project
steakhal added a comment to D122150: [clang][analyzer] Add checker for bad use of 'errno'..

The generated doc section looks great. The test coverage it excellent, but I would recommend adding tests for covering the following lines:

  • ErrnoChecker.cpp:99
  • ErrnoModeling.cpp:259
  • ErrnoModeling.cpp:264

There are two other uncovered cases, but those are mainly defensive checks, so I don't mind them.

Thu, Jun 16, 10:11 AM · Restricted Project, Restricted Project
steakhal added a comment to D127874: [analyzer] Reimplement UnreachableCodeChecker using worklists.

If some checker placed a sink node into some block, the successors of the sink block was marked unreachable previously. This leads to an unpleasant situation from the user's point of view since a different bugreport gets correlated with the FPs caused by the sink node of that. This effectively means that for each unconditional sink, we will also have (preferable) an unreachable code report as well.

An example and/or a visualization would be useful for this.

It's quite hard. I could add step numbers so that I could mark which block is being entered and exited the visitation in the recursion.

Thu, Jun 16, 9:49 AM · Restricted Project, Restricted Project
steakhal updated the summary of D127874: [analyzer] Reimplement UnreachableCodeChecker using worklists.
Thu, Jun 16, 9:33 AM · Restricted Project, Restricted Project
steakhal added inline comments to D122150: [clang][analyzer] Add checker for bad use of 'errno'..
Thu, Jun 16, 6:36 AM · Restricted Project, Restricted Project
steakhal added a comment to D126891: [clang-tidy] The check should ignore final classes.

@aaron.ballman @njames93

Thu, Jun 16, 6:34 AM · Restricted Project, Restricted Project
steakhal added a comment to D122150: [clang][analyzer] Add checker for bad use of 'errno'..

It looks great.
Let me check the test coverage and the generated docs page it everything looks great.

Thu, Jun 16, 6:30 AM · Restricted Project, Restricted Project
steakhal added a comment to D127923: [Diagnostics] Accept newline and format diag opts on first line.

Please, consider updating the summary to clearly specify the motivation for making this change.
It describes what this patch intends to do, but I'm about the why.

Thu, Jun 16, 6:03 AM · Restricted Project, Restricted Project
steakhal added a comment to D124244: [analyzer] add StoreToImmutable and ModelConstQualifiedReturn checkers.

Sorry for my late reply.

Thu, Jun 16, 5:53 AM · Restricted Project, Restricted Project

Wed, Jun 15

steakhal requested review of D127874: [analyzer] Reimplement UnreachableCodeChecker using worklists.
Wed, Jun 15, 9:36 AM · Restricted Project, Restricted Project
steakhal committed rG929e60b6bd2f: [analyzer] Relax constraints on const qualified regions (authored by steakhal).
[analyzer] Relax constraints on const qualified regions
Wed, Jun 15, 8:09 AM · Restricted Project, Restricted Project
steakhal committed rGf4fc3f6ba319: [analyzer] Treat system globals as mutable if they are not const (authored by steakhal).
[analyzer] Treat system globals as mutable if they are not const
Wed, Jun 15, 8:09 AM · Restricted Project, Restricted Project
steakhal closed D127763: [analyzer] Relax constraints on const qualified regions.
Wed, Jun 15, 8:08 AM · Restricted Project, Restricted Project
steakhal closed D127306: [analyzer] Treat system globals as mutable if they are not const.
Wed, Jun 15, 8:08 AM · Restricted Project, Restricted Project
steakhal committed rG96ccb690a0ef: [analyzer][NFC] Prefer using isa<> instead getAs<> in conditions (authored by steakhal).
[analyzer][NFC] Prefer using isa<> instead getAs<> in conditions
Wed, Jun 15, 7:59 AM · Restricted Project, Restricted Project
steakhal closed D127742: [analyzer][NFC] Prefer using isa<> instead getAs<> in conditions.
Wed, Jun 15, 7:59 AM · Restricted Project, Restricted Project
steakhal committed rG481f8603246c: [analyzer][NFC] Remove dead field of UnixAPICheckers (authored by steakhal).
[analyzer][NFC] Remove dead field of UnixAPICheckers
Wed, Jun 15, 7:50 AM · Restricted Project, Restricted Project
steakhal committed rG6c4f9998ae38: [analyzer] Fix StreamErrorState hash bug (authored by steakhal).
[analyzer] Fix StreamErrorState hash bug
Wed, Jun 15, 7:50 AM · Restricted Project, Restricted Project
steakhal committed rGf1b18a79b7f4: [analyzer][NFC] Remove dead code and modernize surroundings (authored by steakhal).
[analyzer][NFC] Remove dead code and modernize surroundings
Wed, Jun 15, 7:50 AM · Restricted Project, Restricted Project
steakhal closed D127838: [analyzer][NFC] Remove dead field of UnixAPICheckers.
Wed, Jun 15, 7:50 AM · Restricted Project, Restricted Project
steakhal closed D127839: [analyzer] Fix StreamErrorState hash bug.
Wed, Jun 15, 7:50 AM · Restricted Project, Restricted Project
steakhal closed D127836: [analyzer][NFC] Remove dead code and modernize surroundings.
Wed, Jun 15, 7:50 AM · Restricted Project, Restricted Project
steakhal added a comment to D127763: [analyzer] Relax constraints on const qualified regions.

According to my measurements, this change has minor effects (1 new, 20 disappeared reports).
The interesting reports had really long bug paths, so I think there were some default eval called functions down the line which made this patch surface this way.

Wed, Jun 15, 7:43 AM · Restricted Project, Restricted Project
steakhal added a comment to D127306: [analyzer] Treat system globals as mutable if they are not const.

According to my measurements, this commit will change some reports, but nothing significant (<20) on our testset (except llvm which I did not include).
But more importantly, no taint reports disappeared nor were introduced.

Wed, Jun 15, 7:37 AM · Restricted Project, Restricted Project
steakhal added a comment to D127839: [analyzer] Fix StreamErrorState hash bug.

This change introduces a single new report:

Wed, Jun 15, 7:29 AM · Restricted Project, Restricted Project
steakhal accepted D127649: [analyzer][NFC][test] Add new RUN line with support-symbolic-integer-casts=true to expr-inspection.cpp.
Wed, Jun 15, 7:03 AM · Restricted Project, Restricted Project
steakhal added a comment to D127838: [analyzer][NFC] Remove dead field of UnixAPICheckers.

Umm, why this can't be part of D127836 ?

Wed, Jun 15, 5:44 AM · Restricted Project, Restricted Project
steakhal added inline comments to D127836: [analyzer][NFC] Remove dead code and modernize surroundings.
Wed, Jun 15, 5:42 AM · Restricted Project, Restricted Project
steakhal updated the diff for D127836: [analyzer][NFC] Remove dead code and modernize surroundings.

remove dead code from MallocChecker

Wed, Jun 15, 5:42 AM · Restricted Project, Restricted Project
steakhal added a comment to D125400: [clang][Analyzer] Add errno state to standard functions modeling..

It looks everything fine, given that the alpha.unix.Errno will depend on the apimodeling.StdCLibraryFunctions.
This should do the expected errno state propagation by which the Errno checker can report diagnostics - WHILE the StdCLibraryFunctions still won't report diagnostics.
This means that the Errno part /diagnostics can be separately disabled from the diagnostics of StdCLibraryFunctionArgsChecker and other frontend checkers of the StdCLibraryFunctionsChecker modeling part.
Excellent.

Wed, Jun 15, 5:38 AM · Restricted Project, Restricted Project
steakhal added a comment to D122150: [clang][analyzer] Add checker for bad use of 'errno'..

I believe evalAssume would be a better fit for diagnosing such issues, but I can see your point that we don't have CheckerContext there to emit reports.
That being said, the check::Location is the best alternative.

Wed, Jun 15, 4:59 AM · Restricted Project, Restricted Project
steakhal requested review of D127839: [analyzer] Fix StreamErrorState hash bug.
Wed, Jun 15, 2:33 AM · Restricted Project, Restricted Project
steakhal requested review of D127838: [analyzer][NFC] Remove dead field of UnixAPICheckers.
Wed, Jun 15, 2:32 AM · Restricted Project, Restricted Project
steakhal added a comment to D127799: [StaticAnalyzer] Remove dead code (DO NOT COMMIT).

Thanks @kazu. I evaluated your results and made a patch as D127836.
I think we can abandon this one.

Wed, Jun 15, 2:14 AM · Restricted Project, Restricted Project
steakhal requested review of D127836: [analyzer][NFC] Remove dead code and modernize surroundings.
Wed, Jun 15, 2:12 AM · Restricted Project, Restricted Project

Tue, Jun 14

steakhal added a comment to D125340: [clang][NFC][AST] rename the ImportError to ASTImportError.

Conflict markers fixed by 6ccc2733e72017999a94c10147a71ff595286080.

Tue, Jun 14, 2:58 PM · Restricted Project, Restricted Project
steakhal added inline comments to D127306: [analyzer] Treat system globals as mutable if they are not const.
Tue, Jun 14, 10:32 AM · Restricted Project, Restricted Project
steakhal committed rG21ff652de9fc: [analyzer][NFC] Replace getLastArg with hasArg when applicable (authored by steakhal).
[analyzer][NFC] Replace getLastArg with hasArg when applicable
Tue, Jun 14, 10:29 AM · Restricted Project, Restricted Project
steakhal committed rGcf078adc90f0: [analyzer][NFC] Remove unused ExprEngine::evalBinOp functions (authored by steakhal).
[analyzer][NFC] Remove unused ExprEngine::evalBinOp functions
Tue, Jun 14, 10:16 AM · Restricted Project, Restricted Project
steakhal closed D127732: [analyzer][NFC] Remove unused ExprEngine::evalBinOp functions.
Tue, Jun 14, 10:16 AM · Restricted Project, Restricted Project
steakhal committed rG40940fb2a63d: [analyzer][NFC] Substitute the SVal::evalMinus and evalComplement functions (authored by steakhal).
[analyzer][NFC] Substitute the SVal::evalMinus and evalComplement functions
Tue, Jun 14, 9:57 AM · Restricted Project, Restricted Project
steakhal closed D127734: [analyzer][NFC] Substitute the SVal::evalMinus and evalComplement functions.
Tue, Jun 14, 9:57 AM · Restricted Project, Restricted Project
steakhal committed rGcfc915149c98: [analyzer][NFC] Relocate unary transfer functions (authored by steakhal).
[analyzer][NFC] Relocate unary transfer functions
Tue, Jun 14, 9:57 AM · Restricted Project, Restricted Project
steakhal closed D126127: [analyzer][NFC] Relocate unary transfer functions.
Tue, Jun 14, 9:57 AM · Restricted Project, Restricted Project
steakhal added a comment to D127732: [analyzer][NFC] Remove unused ExprEngine::evalBinOp functions.

LGTM

Do we have a tool to automatically discover unused member functions? (There might be so many of them in CSA...)

Tue, Jun 14, 9:44 AM · Restricted Project, Restricted Project
steakhal added a comment to D127742: [analyzer][NFC] Prefer using isa<> instead getAs<> in conditions.

Why not replace all getAs?

That's a massive change. I actually experimented with it and I see no advantage with that.

Tue, Jun 14, 9:43 AM · Restricted Project, Restricted Project
steakhal requested review of D127763: [analyzer] Relax constraints on const qualified regions.
Tue, Jun 14, 9:37 AM · Restricted Project, Restricted Project
steakhal added a comment to D127306: [analyzer] Treat system globals as mutable if they are not const.
  • Modify the GenericTaintChecker::isStdin() to look through derived symbols, to mitigate the effect of invalidations.

So, the taint property is still not propagated by the engine after the invalidation. BUT, since we have the

static bool isTaintedOrPointsToTainted(const Expr *E, .... {
  if (isTainted(State, E, C.getLocationContext()) || isStdin(E, C))
    return true;

condition and the modified isStdin, now we consider the Expr* associated to stdin as tainted. Please confirm my understanding is correct.

Tue, Jun 14, 9:31 AM · Restricted Project, Restricted Project
steakhal updated the diff for D127306: [analyzer] Treat system globals as mutable if they are not const.

Use getOriginRegion().

Tue, Jun 14, 9:31 AM · Restricted Project, Restricted Project
steakhal abandoned D125749: [analyzer][NFC] Introduce SVal::isa<Ts...>.

We don't have the consensus to make me confident in landing this change.

Tue, Jun 14, 7:02 AM · Restricted Project, Restricted Project
steakhal requested review of D127742: [analyzer][NFC] Prefer using isa<> instead getAs<> in conditions.
Tue, Jun 14, 6:43 AM · Restricted Project, Restricted Project
steakhal committed rGde6ba9704d0b: [analyzer][Casting] Support isa, cast, dyn_cast of SVals (authored by steakhal).
[analyzer][Casting] Support isa, cast, dyn_cast of SVals
Tue, Jun 14, 4:43 AM · Restricted Project, Restricted Project
steakhal closed D125709: [analyzer][Casting] Support isa, cast, dyn_cast of SVals.
Tue, Jun 14, 4:43 AM · Restricted Project, Restricted Project
steakhal added a comment to D126891: [clang-tidy] The check should ignore final classes.

ping again; @whisperity

Tue, Jun 14, 3:34 AM · Restricted Project, Restricted Project
steakhal requested review of D127734: [analyzer][NFC] Substitute the SVal::evalMinus and evalComplement functions.
Tue, Jun 14, 3:28 AM · Restricted Project, Restricted Project
steakhal updated the diff for D126127: [analyzer][NFC] Relocate unary transfer functions.

rebase; ping

Tue, Jun 14, 3:25 AM · Restricted Project, Restricted Project
steakhal requested review of D127732: [analyzer][NFC] Remove unused ExprEngine::evalBinOp functions.
Tue, Jun 14, 3:20 AM · Restricted Project, Restricted Project
steakhal requested review of D127306: [analyzer] Treat system globals as mutable if they are not const.

Please check this again @martong @xazax.hun.
I'll also conduct a measurement, investigating what report changes we experience with this change.

Tue, Jun 14, 2:06 AM · Restricted Project, Restricted Project
steakhal updated the diff for D127306: [analyzer] Treat system globals as mutable if they are not const.
  • Modify the GenericTaintChecker::isStdin() to look through derived symbols, to mitigate the effect of invalidations.
Tue, Jun 14, 2:05 AM · Restricted Project, Restricted Project
steakhal committed rG9da697e1bcef: Reland "[analyzer] Deprecate the unused 'analyzer-opt-analyze-nested-blocks'… (authored by steakhal).
Reland "[analyzer] Deprecate the unused 'analyzer-opt-analyze-nested-blocks'…
Tue, Jun 14, 1:23 AM · Restricted Project, Restricted Project, Restricted Project
steakhal committed rG24bd47dc172f: [analyzer][NFC] Inline AnalyzerOptions::getUserMode() (authored by steakhal).
[analyzer][NFC] Inline AnalyzerOptions::getUserMode()
Tue, Jun 14, 12:43 AM · Restricted Project, Restricted Project
steakhal closed D127486: [analyzer][NFC] Inline AnalyzerOptions::getUserMode().
Tue, Jun 14, 12:43 AM · Restricted Project, Restricted Project
steakhal accepted D127646: [analyzer][NFC][test] Add new RUN lint with support-symbolic-integer-casts=true to svalbuilder-rearrange-comparisons.c.
Tue, Jun 14, 12:42 AM · Restricted Project, Restricted Project
steakhal added inline comments to D127649: [analyzer][NFC][test] Add new RUN line with support-symbolic-integer-casts=true to expr-inspection.cpp.
Tue, Jun 14, 12:39 AM · Restricted Project, Restricted Project
steakhal committed rGffe7950ebc62: Reland "[analyzer] Deprecate `-analyzer-store region` flag" (authored by steakhal).
Reland "[analyzer] Deprecate `-analyzer-store region` flag"
Tue, Jun 14, 12:21 AM · Restricted Project, Restricted Project
steakhal closed D126215: [analyzer] Deprecate `-analyzer-store region` flag.
Tue, Jun 14, 12:21 AM · Restricted Project, Restricted Project

Mon, Jun 13

steakhal committed rG0539b456b788: [analyzer][NFC] Remove unused Analyses enum (authored by steakhal).
[analyzer][NFC] Remove unused Analyses enum
Mon, Jun 13, 12:21 PM · Restricted Project, Restricted Project
steakhal closed D127485: [analyzer][NFC] Remove unused Analyses enum.
Mon, Jun 13, 12:20 PM · Restricted Project, Restricted Project
steakhal added inline comments to D127486: [analyzer][NFC] Inline AnalyzerOptions::getUserMode().
Mon, Jun 13, 12:17 PM · Restricted Project, Restricted Project
steakhal added inline comments to D127306: [analyzer] Treat system globals as mutable if they are not const.
Mon, Jun 13, 12:00 PM · Restricted Project, Restricted Project

Sat, Jun 11

steakhal requested review of D126215: [analyzer] Deprecate `-analyzer-store region` flag.
Sat, Jun 11, 3:29 AM · Restricted Project, Restricted Project
steakhal reopened D126215: [analyzer] Deprecate `-analyzer-store region` flag.
Sat, Jun 11, 3:29 AM · Restricted Project, Restricted Project
steakhal added a reviewer for D126215: [analyzer] Deprecate `-analyzer-store region` flag: thakis.
Sat, Jun 11, 3:29 AM · Restricted Project, Restricted Project
steakhal updated the diff for D126215: [analyzer] Deprecate `-analyzer-store region` flag.
  • Add the new diag::warn_analyzer_deprecated_option warning to the "deprecated-static-analyzer-flag" DiagGroup to prevent breaking the clang/test/Misc/warning-flags.c test file.
Sat, Jun 11, 3:28 AM · Restricted Project, Restricted Project

Fri, Jun 10

steakhal added a comment to D126067: [analyzer] Deprecate the unused 'analyzer-opt-analyze-nested-blocks' cc1 flag.

One of your changes broke check-clang: http://45.33.8.238/linux/78236/step_7.txt

Please take a look and revert for now if it takes a while to fix.

(Please run tests locally before committing.)

Fri, Jun 10, 5:49 AM · Restricted Project, Restricted Project, Restricted Project
steakhal committed rG90374df15ddc: [analyzer] Fix buildbots after introducing a new frontend warning (authored by steakhal).
[analyzer] Fix buildbots after introducing a new frontend warning
Fri, Jun 10, 5:48 AM · Restricted Project, Restricted Project
steakhal requested review of D127486: [analyzer][NFC] Inline AnalyzerOptions::getUserMode().
Fri, Jun 10, 4:28 AM · Restricted Project, Restricted Project
steakhal requested review of D127485: [analyzer][NFC] Remove unused Analyses enum.
Fri, Jun 10, 4:27 AM · Restricted Project, Restricted Project
steakhal added a comment to D126215: [analyzer] Deprecate `-analyzer-store region` flag.

Looks like this breaks building clang-tidy: http://45.33.8.238/linux/78232/step_4.txt

Please take a look, and revert for now if it takes a while to fix.

Fri, Jun 10, 4:22 AM · Restricted Project, Restricted Project
steakhal committed rG4c38953f32f2: [clang-tidy] Remove reference to CSA AnalysisStoreOpt field (authored by steakhal).
[clang-tidy] Remove reference to CSA AnalysisStoreOpt field
Fri, Jun 10, 4:22 AM · Restricted Project, Restricted Project
steakhal committed rG07b4a6d0461f: [analyzer] Deprecate the unused 'analyzer-opt-analyze-nested-blocks' cc1 flag (authored by steakhal).
[analyzer] Deprecate the unused 'analyzer-opt-analyze-nested-blocks' cc1 flag
Fri, Jun 10, 4:12 AM · Restricted Project, Restricted Project, Restricted Project
steakhal closed D126067: [analyzer] Deprecate the unused 'analyzer-opt-analyze-nested-blocks' cc1 flag.
Fri, Jun 10, 4:12 AM · Restricted Project, Restricted Project, Restricted Project
steakhal committed rGb73c2280f5f3: [analyzer][NFC] Remove unused RegionStoreFeatures (authored by steakhal).
[analyzer][NFC] Remove unused RegionStoreFeatures
Fri, Jun 10, 4:03 AM · Restricted Project, Restricted Project
steakhal closed D126216: [analyzer][NFC] Remove unused RegionStoreFeatures.
Fri, Jun 10, 4:03 AM · Restricted Project, Restricted Project
steakhal committed rGd50d9946d1d7: [analyzer] Deprecate `-analyzer-store region` flag (authored by steakhal).
[analyzer] Deprecate `-analyzer-store region` flag
Fri, Jun 10, 3:59 AM · Restricted Project, Restricted Project