Tested with GHC 7.8.2