<div dir="ltr"><div>Hello everyone,<br></div><br>I have some questions about the exploded graph. <br><br><div style="margin-left:40px"><i>class A {<br>public:<br>  A() {foo();}<br>  void foo();<br>};<br>int main() {<br></i></div><div style="margin-left:40px"><i>  A a;<br></i></div><div style="margin-left:40px"><i>}<br></i><br></div><div>When I use the clang to dump the exploded graph of the code above. There is only one exploded graph.<br><br></div><div><div style="margin-left:40px"><i>class A {<br>public:<br>  A() {foo();}<br>  void foo();<br>};<br>int main() {<br>  A *a = new A();<br></i></div><div style="margin-left:40px"><i>  delete a;<br></i></div><div style="margin-left:40px"><i>}<br><br></i></div>But when I dump the code above. There is two exploded graph, one for main and another for the construction of the class A.<br><br></div><div>My question is: what is the difference between using the pointer and using the object to initialize a class? Can I use the path-sensitive checker to explore the exploded graph of the construction.<br><br></div><div>Regards,<br></div><div>Xin<br></div></div>