PInner Monoid instance in Plutarch.Orphans causes (plutarch-compile-time) infinite loops where (PInner a ~ a)
Closed this issue · 1 comments
t1lde commented
See:
liqwid-plutarch-extra/src/Plutarch/Orphans.hs
Lines 54 to 68 in fe341f0
This causes most types without Monoid/Semigroup instances to erroneously receive instances!
For example - the following cause an infinite loop at plutarch compile time:
printTerm (Config DoTracing) (d :: Term s PScriptContext)
printTerm (Config DoTracing) (d :: Term s PDatum)
This is due to most of the Builtin types having (PInner a ~ a), so effectively every type will cause such looping !
peter-mlabs commented
Fascinating. How did you track this down?