We have expressed interest too in reading typespecs from core. If I remember correctly though, the OTP team did not reach a consensus about storing Core AST in beam files.<div><br></div><div>If there is a consensus and a name for a chunk where we can store Core AST in beam files, I would gladly sent a patch to dialyzer and compiler (so we have a pass that stores Core AST).<span></span></div><div><br>On Monday, November 17, 2014, Robert Virding <<a href="mailto:rvirding@gmail.com">rvirding@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>From where does it get it if I have .erl files as input? From the AST as well? Do you know if there is any difference in the data itself between the AST and core? I am guessing not but want to check. If there is no difference then the info could be gotten from Core. This would make it easier to use dialyzer together with LFE.<br><br></div>Robert<br><br></div><div class="gmail_extra"><br><div class="gmail_quote">On 17 November 2014 17:03, Stavros Aronis <span dir="ltr"><<a href="javascript:_e(%7B%7D,'cvml','aronisstav@gmail.com');" target="_blank">aronisstav@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi Robert,<div><br></div><div>Dialyzer gets this info from beam_lib:chunks(File, [abstract_code]) which corresponds to the AST and is included in beam files if +debug_info is used while compiling.</div><div><br></div><div>To my knowledge there is no reason to not let sources be combined (except perhaps when building a PLT), but the implementation seems to require uniformity.</div><div><br></div><div>Relevant functions: dialyzer_utils:get_abstract_code_from_{src,beam}/{1,2}, get_spec_info/3, get_record_and_type_info/1.</div><div><br></div><div>Regards,</div><div><br></div><div>Stavros</div></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div>On Mon, Nov 17, 2014 at 4:53 PM, Robert Virding <span dir="ltr"><<a href="javascript:_e(%7B%7D,'cvml','rvirding@gmail.com');" target="_blank">rvirding@gmail.com</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div><div dir="ltr"><div>From where does dialyzer get the user added type and spec info? From the AST, or from Core erlang which contains the same type/spec data? And why? Can I control it?<br><br></div><div>An extra question: why doesn't dialyzer allow me to mix input from both .erl and .beam files? Or does it and I have missed that?<span><font color="#888888"><br><br></font></span></div><span><font color="#888888">Robert<br><br></font></span></div>
<br></div></div>_______________________________________________<br>
erlang-questions mailing list<br>
<a href="javascript:_e(%7B%7D,'cvml','erlang-questions@erlang.org');" target="_blank">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
<br></blockquote></div><br></div>
</blockquote></div><br></div>
</blockquote></div><br><br>-- <br><div><br></div><div><br></div><div><span style="font-size:13px"><div><span style="font-family:arial,sans-serif;font-size:13px;border-collapse:collapse"><b>José Valim</b></span></div><div><span style="font-family:arial,sans-serif;font-size:13px;border-collapse:collapse"><div><span style="font-family:verdana,sans-serif;font-size:x-small"><a href="http://www.plataformatec.com.br/" style="color:rgb(42,93,176)" target="_blank">www.plataformatec.com.br</a></span></div><div><span style="font-family:verdana,sans-serif;font-size:x-small">Skype: jv.ptec</span></div><div><span style="font-family:verdana,sans-serif;font-size:x-small">Founder and Lead Developer</span></div></span></div></span></div><br>