Why is UndecidableInstances not required here, for instance C1
Trying this in other contexts requires the extension (which seems right), but not here:
Why does GHC’s type-checker accept this UndecidableInstance trick?
GHC accepts the following code.