Many modules use GHC special features when compiled with GHC. Our tests don't currently verify that things will work under other hypothetical compilers. I think we can approximate this by using a private macro instead of directly relying on __GLASGOW_HASKELL__. Given an appropriate Cabal flag, this would be undefed. Then we could tell Travis to run a test with the latest version of GHC pretending it's not GHC.
Better, long term, would be to switch (almost) entirely from "Which GHC, if any?" to "Which language extensions are available?"
Many modules use GHC special features when compiled with GHC. Our tests don't currently verify that things will work under other hypothetical compilers. I think we can approximate this by using a private macro instead of directly relying on
__GLASGOW_HASKELL__
. Given an appropriate Cabal flag, this would be undefed. Then we could tell Travis to run a test with the latest version of GHC pretending it's not GHC.Better, long term, would be to switch (almost) entirely from "Which GHC, if any?" to "Which language extensions are available?"