Performance of pattern checker on OptCoercions

Hi George, Richard has encountered a bit of a performance cliff when merging his no-kinds work. In particular OptCoercions now results in multiple gigabytes of memory consumption during compilation due to the pattern checker. The problem seems to be the opt_trans_rule binding, which has numerous equations, each of which has patterns of various complexities and guards. Might this be another case where disabling the pattern checker is unavoidable? I've attached a testcase to the ticket (#11195) which depends only on the `ghc` library built from Richard's nokinds-dev branch. If it would help I could make it a fully free-standing testcase. It's not time critical as we have just disabled the pattern checker for the time being, but it would be nice to know whether you have any insight into what is happening here. Cheers, - Ben
participants (1)
-
Ben Gamari