<div dir="ltr">Oh right. The #event is just in the print string, not the actual code. The code compiles and runs. <br><br><br>Sergej<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Feb 2, 2015 at 9:06 AM, Vlad Dumitrescu <span dir="ltr"><<a href="mailto:vladdu55@gmail.com" target="_blank">vladdu55@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 Sergej,<div><br></div><div>Is the code you pasted in the mails correct? You have references to both #event and #ev -- maybe that's the cause?</div><div><br></div><div>regards,</div><div>Vlad</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="h5">On Mon, Feb 2, 2015 at 8:23 AM, Sergej Jurečko <span dir="ltr"><<a href="mailto:sergej.jurecko@gmail.com" target="_blank">sergej.jurecko@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 class="h5"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span>On Mon, Feb 2, 2015 at 8:04 AM, Björn Gustavsson <span dir="ltr"><<a href="mailto:bjorn@erlang.org" target="_blank">bjorn@erlang.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span>On Sun, Feb 1, 2015 at 9:47 AM, Sergej Jurecko <<a href="mailto:sergej.jurecko@gmail.com" target="_blank">sergej.jurecko@gmail.com</a>> wrote:<br>
> Tested in 17.3 and 17.4<br>
><br>
> Incorrect behavior 1:<br>
><br>
> -record(ev,{info}).<br>
> test() -><br>
>         test(#ev{info = #{type => dir, name => "My folder"}}).<br>
> test(#ev{info = #{type := dir} = I} = E) -><br>
>         io:format("E = ~p~n",[E]),<br>
>         io:format("E#<a href="http://event.info" target="_blank">event.info</a> = ~p~n",[E#<a href="http://ev.info" target="_blank">ev.info</a>]),<br>
>         io:format("I = ~p~n",[I]).<br>
><br>
> Calling test/0 will print:<br>
> E = {ev,#{name => "My folder",type => dir}}<br>
> E#<a href="http://event.info" target="_blank">event.info</a> = #{type => dir}<br>
> I = #{name => "My folder",type => dir}<br>
><br>
> Why is E#<a href="http://event.info" target="_blank">event.info</a> without name field?<br>
><br>
<br>
</span>The behaviour is the expected.<br>
<br>
Records are compile-time construct that are translated<br>
to tuples. So at run-time the record is a tuple and<br>
will be printed as a tuple.<br>
<span></span></blockquote><div><br><br></div></span><div>Yes but E#<a href="http://event.info" target="_blank">event.info</a> value is not a record. It is a map which should contain #{type => dir, name => "My folder"}, yet when trying to extract that record we only get #{type => dir}. <br><br></div><div>E#<a href="http://event.info" target="_blank">event.info</a> should be the same as I, yet it is not.<span><font color="#888888"><br><br><br>Sergej<br></font></span></div></div></div></div>
<br></div></div>_______________________________________________<br>
erlang-bugs mailing list<br>
<a href="mailto:erlang-bugs@erlang.org" target="_blank">erlang-bugs@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-bugs" target="_blank">http://erlang.org/mailman/listinfo/erlang-bugs</a><br>
<br></blockquote></div><br></div>
</blockquote></div><br></div>