Skip to content

Eliminate some ambiguity for IsString [a]

The libraries list resolved to make a modification to the String instance for IsString to resolve certain ambiguous cases. One example is:

"hello" ++ " world"

This case can be resolved by making the instance:

instance (a ~ Char) => IsString [a] where ...

rather than:

instance IsString [Char] where ...

as the former matches only based on the head being [a], and subsequently determines a ~ Char, rather than only matching when other factors cause the head to be fully resolved to [Char].

Trac metadata
Trac field Value
Version 7.10.2
Type Task
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component Core Libraries
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information