That way of saying it clarifies the expectations for me. And doesn't seem too burdensome for the plugin author.
Thus I think this ticket could be resolved by updating the documentation. (Though I still would like for a plugin to be able to request the flattened Wanteds. Separate ticket?) In particular this sentence in the User Guide "[The plugin] will be invoked at two points in the constraint solving process: after simplification of given constraints, and after unflattening of wanted constraints." would benefit from some elaboration. Specifically, "unflattening of wanted constraints" is somewhat ambiguous: until you spelled it out, I was thinking that if a constraint is flattened, it doesn't have any flattening variables in it. However, I'm inferring here that the jargon is used to mean that "unflattening a wanted constraint" only eliminates fmvs, possibly leaving fsks behind? That's what I've been confused about (until now, I think). Thanks. On Tue, Jun 5, 2018, 01:48 GHC <ghc-devs@haskell.org> wrote: > #15147: Type checker plugin receives Wanteds that are not completely > unflattened > -------------------------------------+------------------------------------- > Reporter: nfrisby | Owner: (none) > Type: bug | Status: new > Priority: normal | Milestone: 8.6.1 > Component: Compiler (Type | Version: 8.4.1 > checker) | Keywords: > Resolution: | TypeCheckerPlugins > Operating System: Unknown/Multiple | Architecture: > | Unknown/Multiple > Type of failure: None/Unknown | Test Case: > Blocked By: | Blocking: > Related Tickets: | Differential Rev(s): > Wiki Page: | > -------------------------------------+------------------------------------- > > Comment (by simonpj): > > > Perhaps I'm misunderstanding something > > I didn't express it very clearly. As it stands, the Given CFunEqCan's > remain, and hence so do the fsks. The Wanted CFunEqCans are removed > (currently) along with the fmvs. > > So yes, currently Wanteds can contain fsks, whose definition is given by a > CFunEqCan. I would have thought that most plugins would not find it hard > to deal with that. > > -- > Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15147#comment:14> > GHC <http://www.haskell.org/ghc/> > The Glasgow Haskell Compiler >
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs