<div dir="auto"><div dir="auto">Foldable, Traversable, Bifoldable, and Bitraversable instances of Data.Semigroup.Arg don't respect ==.</div><div dir="auto"><br></div><div dir="auto">For example, Arg () 1 == Arg () 2 = True, but sum (Arg () 1) = 1 and sum (Arg () 2) = 2.</div><div dir="auto"><br></div><div dir="auto">I believe the best solution is to remove the Traversable and Bitraversable instances, and define</div><div dir="auto"><br></div><div dir="auto">    foldMap _ _ = mempty</div><div dir="auto">    bifoldMap f _ (Arg a _) = a</div><div dir="auto"><br></div><div dir="auto">There also needs to be some documentation about the fact that the Arg constructor allows inspection that does not respect Eq.</div></div>