[GHC] #13579: -fdefer-type-errors and -fdefer-typed-holes flag do not perform their roles

GHC ghc-devs at haskell.org
Sat Apr 15 09:55:33 UTC 2017


#13579: -fdefer-type-errors and -fdefer-typed-holes flag do not perform their roles
-------------------------------------+-------------------------------------
           Reporter:  vanto          |             Owner:  (none)
               Type:  bug            |            Status:  new
           Priority:  normal         |         Milestone:
          Component:  Compiler       |           Version:  8.0.2
           Keywords:                 |  Operating System:  Unknown/Multiple
       Architecture:                 |   Type of failure:  Incorrect
  Unknown/Multiple                   |  error/warning at compile-time
          Test Case:                 |        Blocked By:
           Blocking:                 |   Related Tickets:
Differential Rev(s):                 |         Wiki Page:
-------------------------------------+-------------------------------------
 with {{{-fdefer-type-errors}}} flag\\

 Prelude > {{{let f = [True | x <- [_,_]]}}} raise two warning. Good!.\\
 Prelude > {{{f}}}\\
 {{{[True, True]}}}\\
 With this function \\
 Prelude> {{{let f' = [True | x <- [_, _]] in f'}}}\\
 GHCi raise two errors.
 It is not clear!

 idem with {{{-fdefer-typed-holes}}} flag\\
 If you compile, there is a warning and of course no result and after
 linking an error is raise. This situation is not clear for me.\\
 Logically it should have a result.\\
 logically the function {{{f}}} and the function {{{f'}}} send a result.\\
 Typed Holes worsens in this case

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


More information about the ghc-tickets mailing list