<div dir="ltr"><div class="gmail_quote"><div dir="ltr">Apologies if anyone receives this twice, but I think I was not able to post to the group before because I had not joined it.<br><br>On OTP 19:<br><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Erlang/OTP 19 [erts-8.0] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false]<br></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"> </blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Eshell V8.0 (abort with ^G)<br>1> gen_server:module_info(attributes).<br>[{vsn,[312724683823627977474402165944618744937]}]</blockquote><br>but on OTP 18:<br><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Erlang/OTP 18 [erts-7.3] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]<br></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"> </blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Eshell V7.3 (abort with ^G)<br>1> gen_server:module_info(attributes).<br>[{vsn,[103744906244088013982217220225633001614]},<br> {callback,[{{init,1},<br> [{type,"t",'fun',<br> [{type,"t",product,<br> [{ann_type,"t",[{var,"t",'Args'},{type,"t",term,[]}]}]},<br> {type,"u",union,<br> [{type,"u",tuple,[{atom,"u",ok},{ann_type,"u",[{...}|...]}]},<br> {type,"u",tuple,<br> [{atom,"u",ok},{ann_type,"u",[...]},{type,[...],...}]},<br> {type,"v",tuple,[{atom,"v",stop},{ann_type,[...],...}]},<br> {atom,"v",ignore}]}]}]}]}, ...]</blockquote><br>The data is still present in the beam file on OTP 19:<br><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Erlang/OTP 19 [erts-8.0] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false]<br></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"> </blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Eshell V8.0 (abort with ^G)<br>1> beam_lib:chunks(code:which(gen_server), [abstract_code]).<br>{ok,{gen_server,[{abstract_code,{raw_abstract_v1,[{attribute,1,<br> file,<br> {"gen_server.erl",1}},<br> {attribute,20,module,gen_server},<br> {attribute,90,export,<br> [{start,3},<br> {start,4},<br> {start_link,3},<br> {start_link,4},<br> {stop,1},<br> {stop,3},<br> {call,2},<br> {call,3},<br> {cast,2},<br> {reply,2},<br> {abcast,2},<br> {abcast,...},<br> {...}|...]},<br> {attribute,100,export,<br> [{system_continue,3},<br> {system_terminate,4},<br> {system_code_change,4},<br> {system_get_state,1},<br> {system_replace_state,2},<br> {format_status,2}]},<br> {attribute,108,export,[{init_it,6}]},<br> {attribute,110,import,{error_logger,[{format,2}]}},<br> {attribute,116,callback,<br> {{init,1},[{type,116,'fun',[{type,...},{...}]}]}},<br> {attribute,119,callback,<br> {{handle_call,3},[{type,119,'fun',[{...}|...]}]}},<br> {attribute,127,callback,<br> {{handle_cast,2},[{type,127,'fun',[...]}]}},<br> {attribute,131,callback,<br> {{handle_info,2},[{type,131,'fun',...}]}},<br> {attribute,135,callback,{{terminate,2},[{type,135,...}]}},<br> {attribute,139,callback,{{code_change,3},[{type,...}]}},<br> {attribute,142,callback,{{format_status,2},[{...}]}},<br> {attribute,149,optional_callbacks,[{format_status,...}]},<br> {function,168,start,3,[...]},<br> {function,171,start,4,...},<br> {function,174,start_link,...},<br> {function,177,...},<br> {function,...},<br> {...}|...]}}]}}</blockquote><br>but I can't find any details on this change in the OTP 19 changelog, in a PR on GitHub, or in the issues tracker. Can someone point me to why this behavior changed?<br><br>Thanks!</div>
</div><br></div>