
#14361: GHC HEAD miscompiles `text-containers` -------------------------------------+------------------------------------- Reporter: hvr | Owner: (none) Type: bug | Status: patch Priority: high | Milestone: 8.4.1 Component: Compiler | Version: 8.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Incorrect result | Unknown/Multiple at runtime | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by simonpj): Crumbs. From Phab:D4152: {{{ Previously CBE computed equality by taking the lists of middle nodes of the blocks being compared and zipping them together. It would then map over this list with the equality relation, and accumulate the result. However, this is completely wrong: Consider what will happen when we compare a block with no middle nodes with one with one or more. The result of zip will be empty and consequently the pass may conclude that the two are indeed equivalent (if their last nodes also match). }}} That's truly terrible! Well caught. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14361#comment:13 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler