[GHC] #15745: Panicking typechecker plugins

GHC ghc-devs at haskell.org
Mon Oct 15 01:45:15 UTC 2018


#15745: Panicking typechecker plugins
-------------------------------------+-------------------------------------
        Reporter:  philderbeast      |                Owner:  (none)
            Type:  feature request   |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler (Type    |              Version:  8.2.2
  checker)                           |             Keywords:
      Resolution:                    |  TypeCheckerPlugins
Operating System:  Unknown/Multiple  |         Architecture:
 Type of failure:  Compile-time      |  Unknown/Multiple
  crash or panic                     |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by goldfire):

 Just to expand on Adam's comment (which I agree with): a plugin passes
 data back to GHC. If that data contains an `undefined`, then it will cause
 a panic, and there's no (reasonably easy) way to properly blame the plugin
 instead of GHC. I don't see any way to avoid this, unless we deepseq all
 data that the plugin returns (which isn't, on its surface, a terrible
 idea).

 However, the bald `undefined`s above should be easy enough to catch.

 What might be an unreasonable way to do this? To carefully track plugin-
 provided information using some sort of tainting process. This is, of
 course, doable, but of quite small benefit compared to the cost.

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15745#comment:2>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list