[GHC] #14285: Entered absent arg - triggered by INLINEABLE, regression from 8.0.2
GHC
ghc-devs at haskell.org
Tue Oct 3 13:45:22 UTC 2017
#14285: Entered absent arg - triggered by INLINEABLE, regression from 8.0.2
---------------------------------+--------------------------------------
Reporter: j.waldmann | Owner: (none)
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 8.2.1
Resolution: | Keywords:
Operating System: Linux | Architecture: x86_64 (amd64)
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
---------------------------------+--------------------------------------
Comment (by Simon Peyton Jones <simonpj@…>):
In [changeset:"dbbee1bacef1a8accc630908c31cf267a3cb98a9/ghc"
dbbee1ba/ghc]:
{{{
#!CommitTicketReference repository="ghc"
revision="dbbee1bacef1a8accc630908c31cf267a3cb98a9"
Fix nasty bug in w/w for absence analysis
This dark corner was exposed by Trac #14285. It involves the
interaction between absence analysis and INLINABLE pragmas.
There is a full explanation in Note [aBSENT_ERROR_ID] in MkCore,
which you can read there. The changes in this patch are
* Make exprIsHNF return True for absentError, treating
absentError like an honorary data constructor.
* Make absentError /not/ be diverging, unlike other error Ids.
This is all a bit horrible.
* While doing this I found that exprOkForSpeculation didn't
have a case for value lambdas so I added one. It's not
really called on lifted types much, but it seems like the
right thing
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14285#comment:7>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list