[cfe-dev] How does Static Analyzer handle ProgramStates?

Arthur Yoo phjy007 at gmail.com
Wed Jan 8 05:38:11 PST 2014


Hi all,


*ProgramStates* are immutable. Every *ExplodedNode* has its *ProgramPoint*and
*ProgramState*. If the source code file is very very large, does the
Analyzer can hold all of the *PopgramStates* for all paths?


In addition, I found it is strange when Analyzer evaluating ‘+=’ for some
cases. My test codes are like below:

*po = &obj;*

*a = 8;*

*a += po;*

In my test, evaluating ‘*a += po*’ makes the Analyzer crash. However, if I
try to evaluate the codes below, the Analyzer doesn’t crash.

*po = &obj;*

*a = 8;*

*a = a + po;*

So how can I solve this problem? Thanks a lot.

-- 
Best regards,
Arthur Yoo
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20140108/c8620b92/attachment.html>


More information about the cfe-dev mailing list