Ok, so I couldn’t help myself
I changed my source code to
product() and did the same as above, but this time with some printf debugging in erl_types, here’s what the function
type_from_form1/12 gets and fails on :
If my eyes are not failing me (possible!) then we’re falling down because lookup_type/3 is missing a match for
user_type. Don’t know this code well, so either a big ole miss, or a subtle bug was introduced somewhere before we hit here (i.e., something responsible for translating
type was missed).
That’s as far as I will go on this one (for now) , but I hope that helps with the bug report.
My eyes were failing me, something goes wrong before lookup_type/2, the lookup for module types doesn’t end well, it seems. Seems like fun/2 getting passed to lookup_type/3 is strange, going back to the original hypothesis that something is getting gunked up with the translation along the way per the use of the term
product in the abstract code. Might be less nefarious than that though.
Definitely interested to know more