Skip to content

Back to front test in canDecomposableTyConAppOK

Look at this code in canDecomposableTyConAppOK:

    new_locs = [ new_loc
               | bndr <- tyConBinders tc
               , let new_loc0 | isNamedTyConBinder bndr = toKindLoc loc
                              | otherwise               = loc
                     new_loc  | isVisibleTyConBinder bndr
                              = updateCtLocOrigin new_loc0 toInvisibleOrigin
                              | otherwise
                              = new_loc0 ]

The isVisibleTyConBinder case is back to front. We are making the origin invisible when the argument is visible.

@rae do you agree?

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information