src/Pattern.hs の isVar で isVar (PWildcard:_,_) = True としてやれば いいかと思ったが、そういうわけではなさそう。
src/TrCore.hs の以下の部分は、パターンマッチ変換の結果生じる PWildcard ではなく、 ラムダ式の引数への対処かな。
rmWild [] as = reverse as rmWild (([Ty.PWildcard], e'):als') as = rmWild als' (([Ty.PVar "_"], e'):as) rmWild (alt:als') as = rmWild als' (alt:as)
ということは、(\_ -> hoge) には対応しても、(\_ _ -> hoge) など、2引数以上のラムダには対応していないはず(あとで確かめよう)
testcases/pwild2.hs が通るのは、なんか、DefaultAltClause で特殊対応しているようだ。
pwild.hs は、なんかべつのエラーを踏んでいる。