Opened 8 years ago

Closed 7 years ago

#3278 closed bug (wontfix)

Make lazy unlifted bindings an error

Reported by: igloo Owned by:
Priority: high Milestone: 7.4.1
Component: Compiler (Type checker) Version: 6.11
Keywords: Cc:
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: None/Unknown Test Case:
Blocked By: Blocking:
Related Tickets: Differential Rev(s):
Wiki Page:


Remove Opt_WarnLazyUnliftedBindings, and turn the warnTc into an checkTc.

Remove -Werror from test T2806.

Change History (2)

comment:1 Changed 7 years ago by igloo

Type of failure: None/Unknown

Debian's happy still tickles this warning, so I'm punting on this.

comment:2 Changed 7 years ago by simonmar

Resolution: wontfix
Status: newclosed

We decided not to do this, but we did change the warning slightly:

Tue Nov 16 17:18:43 GMT 2010
  * Warn a bit less often about unlifted bindings.
  Warn when
     (a) a pattern bindings binds unlifted values
     (b) it has no top-level bang
     (c) the RHS has a *lifted* type
  Clause (c) is new, argued for by Simon M
  Eg     x# = 4# + 4#      -- No warning
         (# a,b #) = blah  -- No warning
         I# x = blah       -- Warning

    M ./compiler/hsSyn/HsPat.lhs -2 +22
    M ./compiler/typecheck/TcBinds.lhs -4 +10
Note: See TracTickets for help on using tickets.