Haskell。为什么 :info(:) returns 定义了两次?

Haskell. Why is :info (:) returns the definition twice?

我是 haskell 的新手。

如果我输入 GHCi (7.10.3):

:info (:)

我得到结果:

*** Parser:
data [] a = ... | a : [a]   -- Defined in ‘GHC.Types’
infixr 5 :

data [] a = ... | a : [a]   -- Defined in ‘GHC.Types’
infixr 5 :

这是否意味着运算符被定义了两次? 我在源码中没有发现任何可疑的东西=/

这个不用管,肯定是bug。我可以在 GHC 7.10.3 上重现此行为,但当前的 GHC 8.0 开发快照不会遇到此问题:

GHCi, version 8.0.0.20160316: http://www.haskell.org/ghc/  :? for help
Prelude> :info (:)
data [] a = ... | a : [a]   -- Defined in ‘GHC.Types’
infixr 5 :