Re: Cocoa application memory leak check

2009-04-27 Thread Michael Ash
On Mon, Apr 27, 2009 at 9:05 PM, XiaoGang Li wrote: > Thank you, WT and Ken Ferry. > Yes, I also think Instruments is a static analyzer, so I am seeking a better > tool for memory leak check, which support both static and dynamic checker. > Hi, Ken, I have tried the static analyzers you mentioned.

Re: Cocoa application memory leak check

2009-04-27 Thread WT
On Apr 28, 2009, at 3:05 AM, XiaoGang Li wrote: Yes, I also think Instruments is a static analyzer, so... I suppose you meant to say that you also think that it is NOT a static analyzer. :) Wagner ___ Cocoa-dev mailing list (Cocoa-dev@lists.appl

Re: Cocoa application memory leak check

2009-04-27 Thread XiaoGang Li
Thank you, WT and Ken Ferry. Yes, I also think Instruments is a static analyzer, so I am seeking a better tool for memory leak check, which support both static and dynamic checker. Hi, Ken, I have tried the static analyzers you mentioned. But it can not handle this kind of case, for example: //code

Re: Cocoa application memory leak check

2009-04-27 Thread Ken Ferry
.. but speaking of static analyzers, try < http://clang.llvm.org/StaticAnalysis.html>. I don't think it reasons about malloc and free, but it does reason about -retain and -release. -Ken On Mon, Apr 27, 2009 at 3:14 AM, WT wrote: > I think you're expecting a bit too much from Instruments. I ma

Re: Cocoa application memory leak check

2009-04-27 Thread WT
I think you're expecting a bit too much from Instruments. I may be wrong, but I think Instruments is not a static analyzer. It only checks for leaks as they occur, that is, at runtime. Thus, if parts of your code do not execute at runtime during a given session, Instruments won't see them a

Cocoa application memory leak check

2009-04-27 Thread XiaoGang Li
Hello, list I try to check my Cocoa application memory leak issue using Instruments. here I have a question here: for example: if(conditions == true){ void *buffer1 = malloc(32); buffer1 = NULL; } else { void *buffer2 = malloc(32); buffer2 = NULL; } the Instruments (leak