match_co: needs more cases

Simon Peyton-Jones simonpj at
Tue May 28 15:07:28 CEST 2013

It's harmless. But it's there to tell us that a RULE is not going to match because the LHS involves a coercion that is not Refl or a variable.   Matching on more complex coercions is likely to be fragile, since they can take a variety of forms.

So don't worry too much, but I'd be interested in a repro case


| -----Original Message-----
| From: glasgow-haskell-users-bounces at [mailto:glasgow-haskell-
| users-bounces at] On Behalf Of Evan Laforge
| Sent: 27 May 2013 18:56
| To: GHC users
| Subject: match_co: needs more cases
| I made some strictifying changes and started getting this msg from ghc:
| match_co: needs more cases
|     vector-{tc r46}
|       (Sym <(vector-{tc r45})>)
|       <main:Util.TimeVectorStorable.Sample{tc r4e} y{tv a4lK} [tv]>
| It's not just TimeVectorStorable.Sample (which is indeed stored in
| Data.Vectors), we also have some mysterious compiler-generated
| symbols:
| match_co: needs more cases
|     vector-{tc rQA}
|       (Sym <(vector-{tc rQz})>)
|       <a{tv a6IH} [tv]>
| I assume this is harmless, but I didn't see any other references to
| this error on the web or on the ghc trac so maybe it's new?
| _______________________________________________
| Glasgow-haskell-users mailing list
| Glasgow-haskell-users at

More information about the Glasgow-haskell-users mailing list