Skip to content
  • Simon Peyton Jones's avatar
    Fix CaseIdentity optimisation AGAIN · 82b40598
    Simon Peyton Jones authored
    In this commit
        commit 02ac2974
        Author: Simon Peyton Jones <simonpj@microsoft.com>
        Date:   Wed Nov 16 10:37:47 2011 +0000
    
        Fix CaseIdentity optimisaion
    
        In fixing one bug I'd introduced another;
           case x of { T -> T; F -> F }
        wasn't getting optmised!  Trivial to fix.
    
    I introduced yet another!  This line of code in SimplUtils.mkCase1
    
        check_eq (Var v)    (DataAlt con) []   = v == dataConWorkId con
                                                 -- Optimisation only
    
    is patently false when arg_tys is non-empty.  Astonishing that it
    has not shown up before now.
    
    Easily fixed though.  This was all shown up by Trac #13417, which is
    now fixed.
    
    Merge to 8.0, 8.2.
    82b40598