ilya-klyuchnikov
ilya-klyuchnikov
Just FYI - #323 - a naive fix to not get into the loop. (I have not read this PR yet fully)
Just thinking about @zuiderkwast's remarks, this example makes gradualizer fall into the loop. ```erlang -module(recursive_record). -compile([export_all, nowarn_export_all]). -type rec(A) :: A | #rec{rec :: A | rec(A)}. -record(rec, {rec ::...
> are you saying we also need the set mechanism for recursive records? Yes, - in this example with records - the loop happens at line 619. - Where a...
It seems, that records in the first place may not be the most essential part of reproducing/minimizing the issue. Just trying identifying the loop manually - dumping stack trace, it...
It's also possible to loop without type parameters: ```erlang -module(even_more_recursive_types). -compile([export_all, nowarn_export_all]). -type rec1() :: rec1 | {rec1, rec1()} | {rec1, {rec1, rec1()}}. -spec unwrap(rec1()) -> rec1(). unwrap({_, Z}) ->...
FYI: I am doing some hacking of gradualizer on my own (for some practical stuff) - without any intention to upstream it so far, but - it was the first...
I am doing some things with it for Whatsapp in the first place (and it works for WA in some pilot/research mode) - let me have a chat with @josefs...
OK, - I had a quick chat with @josefs , - it would be beneficial to upstream changes/improvements. - I will make corresponding PRs this/next week. Thanks everyone for the...
> Filenames should be displayed by default I think that they ALWAYS should be displayed in the format ``` filename:Line filename:Line:Column ``` Why? - This is what the majority of...
Thanks. Yes, it would be added as part of documentation soon.