<div dir="ltr"><div>Hi,</div><div dir="ltr"><br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><div><br></div><div>If we want to pursue Z3 for summaries we first will need to fix some of the bugs we currently have. Unfortunately, those are not trivial. So I think if this is our goal the first step is to make Z3 support solid.</div><div> </div></div></div></blockquote><div><br></div><div>The biggest issue when encoding the program in SMT is the lack of extension/truncation in the constraints from the analyzer. The analyzer drops all casts and the backend has to apply them before encoding including things like integer promotion; there is even some duplicated code from sema in smt_conv.h.</div><div><br></div><div>If you are really interested in using the Z3 backend, my suggestion is to first support extension/truncation in the analyzer. I might be able to provide some help there as well.</div><div> </div></div>-- <br><div dir="ltr"><div dir="ltr"><div><br></div><div>Mikhail Ramalho.</div></div></div></div>