[GHC] #11660: Remove Type pretty-printer in favor of IfaceType
GHC
ghc-devs at haskell.org
Fri Oct 14 13:42:52 UTC 2016
#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
More information about the ghc-tickets
mailing list