patch applied (bytestring): instance IsString for strict and lazy bytestrings. Use -XOverloadedStrings

Ian Lynagh igloo at earth.li
Sat Jan 5 08:05:38 EST 2008


Hi Don,

On Fri, Jan 04, 2008 at 09:21:15PM -0800, Donald Bruce Stewart wrote:
> Fri Jan  4 20:59:50 PST 2008  Don Stewart <dons at galois.com>
>   * instance IsString for strict and lazy bytestrings. Use -XOverloadedStrings

This has lots of things like:

+#if __GLASGOW_HASKELL__ >= 608
+import Data.String
+#endif

but Data.String and the IsString class are portable. I think you should
use something like:

#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ >= 608
#define HAVE_DATA_STRING 1
#endif
...similar things for hugs etc

and then test HAVE_DATA_STRING instead.

(we could test for the presence of IsString using autoconf, but
* that's harder to write
* it's harder to notice when the test is redundant
* the version of base is tied to the compiler version anyway)


Thanks
Ian



More information about the Cvs-libraries mailing list