Skip to content
  • David Feuer's avatar
    Revert "Make raiseIO# produce topRes" · d67f0471
    David Feuer authored
    This reverts commit da4687f6.
    
    It's not entirely trivial to clean up the dead code this patch
    introduced. In particular, when we see
    
    ```
    case raiseIO# m s of
      s' -> e
    ```
    
    we want to know that `e` is dead. For scrutinees that are properly
    bottom (which we don't want to consider `raiseIO# m s` to be, this
    is handled by rewriting `bot` to `case bot of {}`. But if we do
    that for `raiseIO#`, we end up with
    
    ```
    case raiseIO# m s of {}
    ```
    
    which looks a lot like bottom and could confuse demand analysis.
    I think we need to wait with this change until we have a more
    complete story.
    
    Reviewers: austin, bgamari
    
    Reviewed By: bgamari
    
    Subscribers: rwbarton, thomie
    
    Differential Revision: https://phabricator.haskell.org/D3413
    
    (cherry picked from commit e83af07e)
    d67f0471