haskell – 如何拒绝使用某个ghc版本进行构建

我的一个cabal库已达到
this GHC bug.我目前在源代码中有一个解决方法,但是由于此GHC错误现已在7.8.3中修复,我计划很快删除该解决方法.我不知道如何处理这种情况,使图书馆拒绝在GHC 7.8.0-7.8.2上构建.理想情况下,我希望用户得到一个很好的错误消息(“GHC 7.8.0-7.8.2有一个错误阻止这个库正确构建,请使用7.8.3”).

也许一些阴谋旗?还是一些CPP魔术?我认为修复是基础的,也许我可以对此进行调整,尽管它似乎很棘手或不可能.

或者我可以进行很长一段时间的解决方法,直到问题完全没有实际意义,但由于大多数早期采用者会使用7.8.2及更早版本,我认为放弃支持不应该是一个问题,适当的警告.

最佳答案 GHC 7.8.3将基本版本号从4.7.0.0(由之前的7.8版本使用)增加到4.7.0.1.您可以使用build-depends cabal字段来排除该版本,例如通过添加约束基数< = 4.7.0.0 || > 4.7.0.0.

点赞