diff options
author | Joachim Breitner <mail@joachim-breitner.de> | 2021-10-20 17:48:28 +0200 |
---|---|---|
committer | Joachim Breitner <mail@joachim-breitner.de> | 2021-10-22 09:51:57 +0200 |
commit | 7ff71364649a96ef85232f48687ca98d5fdc252c (patch) | |
tree | 46bef13e108327a53e8aecbc916cb202a32a26ef | |
parent | bbe10727ffad07d518610f4176ea4bc29c745bfc (diff) | |
download | haskell-7ff71364649a96ef85232f48687ca98d5fdc252c.tar.gz |
Draft: Experiment: Single method Eq class
as discussed in
https://mail.haskell.org/pipermail/libraries/2021-October/031463.html
Has submodule updates
Metric Decrease:
T12234
T18304
T783
-rw-r--r-- | libraries/base/GHC/Base.hs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libraries/base/GHC/Base.hs b/libraries/base/GHC/Base.hs index e670e42ee8..6868d06862 100644 --- a/libraries/base/GHC/Base.hs +++ b/libraries/base/GHC/Base.hs @@ -1432,7 +1432,8 @@ eqString [] [] = True eqString (c1:cs1) (c2:cs2) = c1 == c2 && cs1 `eqString` cs2 eqString _ _ = False -{-# RULES "eqString" (==) = eqString #-} +-- How can this work with -Werror=inline-rule-shadowing +-- {-# RULES "eqString" (==) = eqString #-} -- eqString also has a BuiltInRule in GHC.Core.Opt.ConstantFold: -- eqString (unpackCString# (Lit s1)) (unpackCString# (Lit s2)) = s1==s2 |