Improve Core Lint, mainly for join points
authorSimon Peyton Jones <simonpj@microsoft.com>
Fri, 17 Feb 2017 15:03:01 +0000 (15:03 +0000)
committerBen Gamari <ben@smart-cactus.org>
Tue, 21 Feb 2017 14:31:17 +0000 (09:31 -0500)
commite790126cd57ab39649b1fd42996733fafe20eb34
tree6f2ff2f6274834cda888532254c99513dd86b9a8
parent82694e6765da1db4e7596ec410e4c41d3bf1ca94
Improve Core Lint, mainly for join points

* lintSingleBinding: check that join points have
                     a valid join-point type
  (Trac #13281)

* lintIdBinder: check that a JoinId is bound by
                a non-top-level let
  i.e.  not a top level binder
        not lambda/case binder

* Check for empty Rec [] bindings

* Rename lintIdBndrs to lintLetBndrs
compiler/coreSyn/CoreLint.hs