
#11660: Remove Type pretty-printer in favor of IfaceType -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: task | Status: patch Priority: high | Milestone: 8.2.1 Component: Compiler | Version: 7.10.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: #12550, #12447, | Differential Rev(s): Phab:D2528 #11786, #11549, #12024, #12697, | #12510 | Wiki Page: | -------------------------------------+------------------------------------- Comment (by bgamari): One thing slightly non-trivial issue that I've run into on this is that I seem to walk into holes while printing with the IfaceType printer which previously we avoided. For instance, `tcfail123` fails with, {{{ =====> tcfail123(normal) 61 of 82 [0, 51, 0] cd "./typecheck/should_fail/tcfail123.run" && "/opt/exp/ghc/ghc- ifacetype/inplace/test spaces/ghc-stage2" -c tcfail123.hs -dcore-lint -dcmm-lint -no-user-package-db -rtsopts -fno-warn-missed-specialisations -fshow-warning-groups -dno-debug-output Actual stderr output differs from expected: --- ./typecheck/should_fail/tcfail123.run/tcfail123.stderr.normalised 2016-10-14 09:36:08.560991222 -0400 +++ ./typecheck/should_fail/tcfail123.run/tcfail123.comp.stderr.normalised 2016-10-14 09:36:08.560991222 -0400 @@ -1,7 +1,14 @@ tcfail123.hs:11:9: Couldn't match a lifted type with an unlifted type - When matching the kind of ‘GHC.Prim.Int#’ - In the first argument of ‘f’, namely ‘3#’ - In the expression: f 3# - In an equation for ‘h’: h v = f 3# + When matching the kind of ‘GHC.Prim.Int#ghc: panic! (the 'impossible' happened) + (GHC version 8.1.20161014 for x86_64-unknown-linux): + toIfaceUnivCoProv hit a hole + {ax1} + Call stack: + CallStack (from HasCallStack): + prettyCurrentCallStack, called at compiler/utils/Outputable.hs:<line>:<column> in <package-id>:Outputable + callStackDoc, called at compiler/utils/Outputable.hs:<line>:<column> in <package-id>:Outputable + pprPanic, called at compiler/iface/IfaceType.hs:<line>:<column> in <package-id>:IfaceType + +Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug }}} It's not entirely clear how best to deal with this, but it does make me worried that this idea may be on shaky ground. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11660#comment:12 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler