danielmarjamaki (Daniel Marjamäki)
User

Projects

User does not belong to any projects.

User Details

User Since
Mar 3 2015, 10:32 PM (136 w, 5 d)

Recent Activity

Today

danielmarjamaki added a comment to D38801: [analyzer] In getSVal() API, disable auto-detection of void type as char type..

LGTM

Mon, Oct 16, 5:43 AM
danielmarjamaki added a comment to D38921: [analyzer] LoopUnrolling: update the matched assignment operators.

LGTM.. however I would like approval from somebody else also.

Mon, Oct 16, 5:24 AM
danielmarjamaki added a comment to D36471: [StaticAnalyzer] Try to calculate arithmetic result when operand has a range of possible values.

ping

Mon, Oct 16, 5:17 AM

Fri, Oct 13

danielmarjamaki added inline comments to D37897: [StaticAnalyzer] Fix ProgramState for static variables that are not written.
Fri, Oct 13, 11:46 AM
danielmarjamaki updated the diff for D37897: [StaticAnalyzer] Fix ProgramState for static variables that are not written.

Track modification of global static variables in CallGraph construction

Fri, Oct 13, 11:36 AM

Thu, Oct 12

danielmarjamaki added inline comments to D37897: [StaticAnalyzer] Fix ProgramState for static variables that are not written.
Thu, Oct 12, 9:25 AM
danielmarjamaki added inline comments to D37897: [StaticAnalyzer] Fix ProgramState for static variables that are not written.
Thu, Oct 12, 8:52 AM

Wed, Oct 11

danielmarjamaki added a comment to D37897: [StaticAnalyzer] Fix ProgramState for static variables that are not written.

Apologies for the delay reviewing! As I noted inline, I'm pretty worried about the performance impact of this. Is it possible to do the analysis in a single traversal of the translation unit?

Wed, Oct 11, 11:19 AM
danielmarjamaki committed rL315462: [Analyzer] Clarify error messages for undefined result.
[Analyzer] Clarify error messages for undefined result
Wed, Oct 11, 7:49 AM
danielmarjamaki closed D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width by committing rL315462: [Analyzer] Clarify error messages for undefined result.
Wed, Oct 11, 7:49 AM

Tue, Oct 10

danielmarjamaki added a comment to D36471: [StaticAnalyzer] Try to calculate arithmetic result when operand has a range of possible values.

ping

Tue, Oct 10, 5:30 AM
danielmarjamaki added a comment to D38718: [Sema] No -Wtautological-pointer-compare warning on variables within parentheses.

LGTM! However I would like to see a review from somebody else also.

Tue, Oct 10, 4:46 AM
danielmarjamaki added a reviewer for D38718: [Sema] No -Wtautological-pointer-compare warning on variables within parentheses: danielmarjamaki.

I think a test for -Wtautological-pointer-compare should be added that shows that the bug is fixed.

Tue, Oct 10, 4:04 AM
danielmarjamaki added a comment to D38675: [analyzer] MisusedMovedObjectChecker: Moving the checker out of alpha state.

However, the checker seems to work with a low false positive rate. (<15 on the LLVM, 6 effectively different)

This does not sound like a low false positive rate to me. Could you describe what the false positives are? Is it possible to fix them?

Note that the unique findings are 6. I think there are non-alpha checks with more false positives.

Tue, Oct 10, 12:45 AM

Mon, Oct 9

danielmarjamaki added a comment to D38674: [analyzer] MisusedMovedObjectChecker: More precise warning message.

LGTM

Mon, Oct 9, 2:03 AM
danielmarjamaki added a reviewer for D38675: [analyzer] MisusedMovedObjectChecker: Moving the checker out of alpha state: danielmarjamaki.

However, the checker seems to work with a low false positive rate. (<15 on the LLVM, 6 effectively different)

Mon, Oct 9, 1:39 AM

Fri, Oct 6

danielmarjamaki added inline comments to D37897: [StaticAnalyzer] Fix ProgramState for static variables that are not written.
Fri, Oct 6, 12:20 AM
danielmarjamaki updated the diff for D37897: [StaticAnalyzer] Fix ProgramState for static variables that are not written.

Fixes according to review comments. Reuse ast matchers in LoopUnrolling.cpp. Avoid some recursion (however the isChanged() is still recursive but it is very small and simple).

Fri, Oct 6, 12:03 AM

Wed, Oct 4

danielmarjamaki added a comment to D36471: [StaticAnalyzer] Try to calculate arithmetic result when operand has a range of possible values.

ping

Wed, Oct 4, 1:09 PM
danielmarjamaki added a comment to D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.

ping

Wed, Oct 4, 1:09 PM

Fri, Sep 29

danielmarjamaki committed rL314499: [Sema] Suppress warnings for C's zero initializer.
[Sema] Suppress warnings for C's zero initializer
Fri, Sep 29, 2:46 AM
danielmarjamaki closed D28148: [Sema] Suppress warnings for C's zero initializer by committing rL314499: [Sema] Suppress warnings for C's zero initializer.
Fri, Sep 29, 2:46 AM

Wed, Sep 27

danielmarjamaki updated the diff for D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.

fixed review comments

Wed, Sep 27, 12:53 PM

Mon, Sep 25

danielmarjamaki added a comment to D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.

ping

Mon, Sep 25, 9:58 AM

Sep 15 2017

danielmarjamaki added a comment to D37897: [StaticAnalyzer] Fix ProgramState for static variables that are not written.

Out of curiosity, does the false positive disappear after making the static variables const?

Sep 15 2017, 3:31 AM
danielmarjamaki updated the diff for D37897: [StaticAnalyzer] Fix ProgramState for static variables that are not written.

Minor cleanups. Changed names. Updated comments.

Sep 15 2017, 3:07 AM
danielmarjamaki added a reviewer for D37897: [StaticAnalyzer] Fix ProgramState for static variables that are not written: AndersRonnholm.
Sep 15 2017, 2:30 AM
danielmarjamaki created D37897: [StaticAnalyzer] Fix ProgramState for static variables that are not written.
Sep 15 2017, 2:15 AM

Sep 14 2017

danielmarjamaki added a comment to D36471: [StaticAnalyzer] Try to calculate arithmetic result when operand has a range of possible values.

ping

Sep 14 2017, 1:58 PM
danielmarjamaki added a comment to D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.

ping

Sep 14 2017, 1:57 PM

Sep 6 2017

danielmarjamaki added a comment to D28148: [Sema] Suppress warnings for C's zero initializer.

This is not committed as far as I see.. do you have write permission or do you want that I commit it?

Sep 6 2017, 1:54 AM
danielmarjamaki updated the diff for D36471: [StaticAnalyzer] Try to calculate arithmetic result when operand has a range of possible values.

minor code cleanup

Sep 6 2017, 1:51 AM
danielmarjamaki added a comment to D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.

ping

Sep 6 2017, 1:16 AM

Sep 1 2017

danielmarjamaki accepted D30691: [analyzer] Support for naive cross translational unit analysis.
Sep 1 2017, 1:07 AM

Aug 31 2017

danielmarjamaki added a reviewer for D34512: Add preliminary Cross Translation Unit support library: danielmarjamaki.
Aug 31 2017, 5:25 AM
danielmarjamaki added a comment to D34512: Add preliminary Cross Translation Unit support library.

small nits

Aug 31 2017, 5:24 AM
danielmarjamaki added inline comments to D30691: [analyzer] Support for naive cross translational unit analysis.
Aug 31 2017, 3:47 AM
danielmarjamaki added a comment to D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.

ping

Aug 31 2017, 1:40 AM

Aug 28 2017

danielmarjamaki committed rL311984: [clang-tidy] Fix 'misc-misplaced-widening-cast' assertion error..
[clang-tidy] Fix 'misc-misplaced-widening-cast' assertion error.
Aug 28 2017, 11:26 PM
danielmarjamaki closed D36670: misc-misplaced-widening-cast: fix assertion by committing rL311984: [clang-tidy] Fix 'misc-misplaced-widening-cast' assertion error..
Aug 28 2017, 11:26 PM · Restricted Project

Aug 23 2017

danielmarjamaki added a comment to D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.

ping

Aug 23 2017, 6:09 AM

Aug 14 2017

danielmarjamaki added a comment to D36672: [clang-tidy] readability-non-const-parameter: fixit on all function declarations.

LGTM. But others should approve.

Aug 14 2017, 9:14 AM · Restricted Project
danielmarjamaki added a comment to D36670: misc-misplaced-widening-cast: fix assertion.

LGTM. I let others approve this.

Aug 14 2017, 5:40 AM · Restricted Project

Aug 9 2017

danielmarjamaki added a comment to D36471: [StaticAnalyzer] Try to calculate arithmetic result when operand has a range of possible values.

Should evalAPSInt() have machinery to do standard sign/type promotions? I suggest that I add one more argument bool promote = false, do you think that sounds good?

Aug 9 2017, 6:43 AM
danielmarjamaki updated the diff for D36471: [StaticAnalyzer] Try to calculate arithmetic result when operand has a range of possible values.

Refactoring, use BasicValueFactory::evalAPSInt

Aug 9 2017, 6:35 AM

Aug 8 2017

danielmarjamaki added a comment to D36471: [StaticAnalyzer] Try to calculate arithmetic result when operand has a range of possible values.

Can't you reuse somehow some machinery already available to evaluate the arithmetic operators? Those should already handle most of your TODOs and overflows.

Aug 8 2017, 9:42 AM
danielmarjamaki updated the diff for D36471: [StaticAnalyzer] Try to calculate arithmetic result when operand has a range of possible values.

A minor code cleanup. No functional change.

Aug 8 2017, 9:37 AM
danielmarjamaki updated the summary of D36471: [StaticAnalyzer] Try to calculate arithmetic result when operand has a range of possible values.
Aug 8 2017, 8:16 AM
danielmarjamaki created D36471: [StaticAnalyzer] Try to calculate arithmetic result when operand has a range of possible values.
Aug 8 2017, 8:14 AM

Aug 3 2017

danielmarjamaki updated the diff for D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.

Cleaned up the patch a little. Thanks Gabor for telling me about SValBuilder::getKnownValue()

Aug 3 2017, 10:30 AM

Aug 2 2017

danielmarjamaki committed rL309799: [StaticAnalyzer] Fix false positives for unreachable code in macros..
[StaticAnalyzer] Fix false positives for unreachable code in macros.
Aug 2 2017, 1:27 AM
danielmarjamaki closed D36141: [StaticAnalyzer] Fix FP in UnreachableCodeChecker by committing rL309799: [StaticAnalyzer] Fix false positives for unreachable code in macros..
Aug 2 2017, 1:27 AM

Aug 1 2017

danielmarjamaki created D36141: [StaticAnalyzer] Fix FP in UnreachableCodeChecker.
Aug 1 2017, 5:04 AM

Jun 22 2017

danielmarjamaki added inline comments to D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.
Jun 22 2017, 9:41 AM
danielmarjamaki updated the diff for D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.

Fix review comments

Jun 22 2017, 9:27 AM

Jun 19 2017

danielmarjamaki abandoned D32346: [clang-tidy] New readability check for strlen argument.

I will not continue working on this checker

Jun 19 2017, 2:05 AM
danielmarjamaki committed rL305669: [analyzer] Fix logical not for pointers with different bit width.
[analyzer] Fix logical not for pointers with different bit width
Jun 19 2017, 1:56 AM
danielmarjamaki closed D31029: [analyzer] Fix logical not for pointers with different bit width by committing rL305669: [analyzer] Fix logical not for pointers with different bit width.
Jun 19 2017, 1:56 AM

May 26 2017

danielmarjamaki added a comment to D31029: [analyzer] Fix logical not for pointers with different bit width.

ping

May 26 2017, 1:53 AM
danielmarjamaki added a comment to D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.

ping

May 26 2017, 1:52 AM

May 16 2017

danielmarjamaki updated the diff for D31029: [analyzer] Fix logical not for pointers with different bit width.

Fix review comments

May 16 2017, 1:27 AM

May 15 2017

danielmarjamaki updated the diff for D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.

renamed exprComparesTo to svalComparesTo

May 15 2017, 10:47 AM
danielmarjamaki updated the diff for D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.

minor tweak

May 15 2017, 3:26 AM

May 2 2017

danielmarjamaki committed rL301913: [analyzer] Detect bad free of function pointers.
[analyzer] Detect bad free of function pointers
May 2 2017, 4:59 AM
danielmarjamaki closed D31650: [Analyzer] Detect when function pointer is freed by committing rL301913: [analyzer] Detect bad free of function pointers.
May 2 2017, 4:59 AM

Apr 27 2017

danielmarjamaki added inline comments to D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.
Apr 27 2017, 5:34 AM

Apr 25 2017

danielmarjamaki accepted D30771: [analyzer] Teach the MallocChecker about Glib API for two arguments.

If you have svn write permission then please do it.

Apr 25 2017, 10:15 PM
danielmarjamaki added a comment to D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.

Ping.

Apr 25 2017, 6:34 AM
D30489: [analyzer] catch out of bounds for VLA now requires changes to proceed.

Ping. Any comments?

Apr 25 2017, 6:33 AM
danielmarjamaki added a comment to D31029: [analyzer] Fix logical not for pointers with different bit width.

Ping

Apr 25 2017, 6:32 AM
danielmarjamaki added inline comments to D30691: [analyzer] Support for naive cross translational unit analysis.
Apr 25 2017, 4:56 AM
danielmarjamaki added inline comments to D32346: [clang-tidy] New readability check for strlen argument.
Apr 25 2017, 4:04 AM
danielmarjamaki added a comment to D32346: [clang-tidy] New readability check for strlen argument.

I am thinking about making my check more strict so it only warns in allocations. I believe the example code is much more motivating when there is allocation.

Apr 25 2017, 3:45 AM
danielmarjamaki updated the diff for D32346: [clang-tidy] New readability check for strlen argument.

Fixed review comments. Made code examples and documentation more motivational.

Apr 25 2017, 3:28 AM

Apr 24 2017

danielmarjamaki added a comment to D32346: [clang-tidy] New readability check for strlen argument.

Thanks for all comments. I am working on fixing them. Updated patch will be uploaded soon.

Apr 24 2017, 6:50 AM

Apr 21 2017

danielmarjamaki created D32346: [clang-tidy] New readability check for strlen argument.
Apr 21 2017, 3:45 AM

Apr 20 2017

danielmarjamaki added a comment to D30771: [analyzer] Teach the MallocChecker about Glib API for two arguments.

you can ignore my comment ... LGTM

Apr 20 2017, 11:50 PM
danielmarjamaki added a comment to D30771: [analyzer] Teach the MallocChecker about Glib API for two arguments.

I don't have further comments except that I would personally rewrite:

// Get the value of the size argument.
SVal TotalSize = State->getSVal(Arg1, LCtx);
if (SuffixWithN) {
  const Expr *Arg2 = CE->getArg(2);
  TotalSize = evalMulForBufferSize(C, Arg1, Arg2);
}

to:

// Get the value of the size argument.
SVal TotalSize;
if (!SuffixWithN) {
  TotalSize = State->getSVal(Arg1, LCtx);
} else {
  TotalSize = evalMulForBufferSize(C, Arg1, CE->getArg(2));
}
Apr 20 2017, 11:06 PM
danielmarjamaki added inline comments to D30771: [analyzer] Teach the MallocChecker about Glib API for two arguments.
Apr 20 2017, 2:20 AM

Apr 19 2017

danielmarjamaki added inline comments to D30771: [analyzer] Teach the MallocChecker about Glib API for two arguments.
Apr 19 2017, 11:11 PM
danielmarjamaki added a comment to D30771: [analyzer] Teach the MallocChecker about Glib API for two arguments.

I hold the view that I need to respect original developers' code, and it need a Global Patch for Capital variable, just like KDE's Use nullptr everywhere

Apr 19 2017, 10:53 PM
danielmarjamaki requested changes to D30771: [analyzer] Teach the MallocChecker about Glib API for two arguments.
Apr 19 2017, 7:56 AM
danielmarjamaki added a reviewer for D30771: [analyzer] Teach the MallocChecker about Glib API for two arguments: danielmarjamaki.
Apr 19 2017, 7:32 AM
danielmarjamaki added inline comments to D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.
Apr 19 2017, 7:23 AM
danielmarjamaki updated the diff for D30295: [analyzer] clarify undef shift result when shift count is negative or exceeds the bit width.

Fix review comments

  • renamed
  • reorder function arguments (CheckerContext last)
Apr 19 2017, 7:19 AM
danielmarjamaki abandoned D31097: [clang-tidy] don't warn about implicit widening casts in function calls.

I believe https://reviews.llvm.org/D32164 is better

Apr 19 2017, 6:54 AM

Apr 18 2017

danielmarjamaki added a comment to D31097: [clang-tidy] don't warn about implicit widening casts in function calls.

Or I can do it for you if you wish.

Apr 18 2017, 5:26 AM
danielmarjamaki added a comment to D31868: [analyzer] Check NULL pointer dereference issue for memset function.

Please click "Done" on fixed review comments.

Apr 18 2017, 3:56 AM
danielmarjamaki added a comment to D30489: [analyzer] catch out of bounds for VLA.

I would propose that I rename and cleanup RangeConstraintManager::uglyEval() and add it. When I tested it, the Z3 does not seem to handle this.

Apr 18 2017, 1:50 AM
danielmarjamaki added a comment to D31097: [clang-tidy] don't warn about implicit widening casts in function calls.

I would recommend that this is either fixed soon or that we commit my changes so it can be implemented more properly later. Right now users will see false positives.

Apr 18 2017, 1:38 AM
danielmarjamaki added a comment to D31029: [analyzer] Fix logical not for pointers with different bit width.

Ping

Apr 18 2017, 1:36 AM

Apr 12 2017

danielmarjamaki added inline comments to D30909: [Analyzer] Finish taint propagation to derived symbols of tainted regions.
Apr 12 2017, 4:38 AM
danielmarjamaki added a reviewer for D31868: [analyzer] Check NULL pointer dereference issue for memset function: danielmarjamaki.
Apr 12 2017, 4:28 AM
danielmarjamaki added a comment to D31868: [analyzer] Check NULL pointer dereference issue for memset function.

Thanks! Looks like a valueable addition.

Apr 12 2017, 4:27 AM
danielmarjamaki added inline comments to D31886: [analyzer] Simplify values in binary operations more aggressively.
Apr 12 2017, 4:12 AM

Apr 7 2017

danielmarjamaki updated the diff for D30489: [analyzer] catch out of bounds for VLA.

This is just work in progress!!

Apr 7 2017, 5:07 AM

Apr 5 2017

danielmarjamaki added a comment to D31650: [Analyzer] Detect when function pointer is freed.

sorry ... I guess that should be something like "void *p = malloc(100);"

Apr 5 2017, 6:42 AM
danielmarjamaki added a comment to D31650: [Analyzer] Detect when function pointer is freed.
In D31650#717691, @NoQ wrote:

Is freeing function pointers always undefined?

Apr 5 2017, 6:38 AM
danielmarjamaki committed rL299523: [analyzer] alpha.core.Conversion - Fix false positive for 'U32 += S16;'….
[analyzer] alpha.core.Conversion - Fix false positive for 'U32 += S16;'…
Apr 5 2017, 2:09 AM
danielmarjamaki closed D25596: alpha.core.Conversion - Fix false positive for 'U32 += S16;' expression, that is not unsafe by committing rL299523: [analyzer] alpha.core.Conversion - Fix false positive for 'U32 += S16;'….
Apr 5 2017, 2:09 AM