
#14997: mut_list_size calculation is off -------------------------------------+------------------------------------- Reporter: osa1 | Owner: (none) Type: bug | Status: new Priority: lowest | Milestone: Component: Runtime | Version: 8.5 System | Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- Program: {{{ main = print (foldr (+) 0 [ 0 .. 10000 ] :: Int) }}} Compile: {{{ $ ghc-stage2 Main.hs -debug -rtsopts -O0 }}} Run: {{{ $ ./Main +RTS -Dg }}} It prints something like {{{ mut_list_size: 16 (0 vars, 0 arrays, 0 MVARs, 0 TVARs, 0 TVAR_WATCH_QUEUEs, 0 TREC_CHUNKs, 0 TREC_HEADERs, 0 ATOMIC_INVARIANTs, 0 INVARIANT_CHECK_QUEUEs, 0 others) }}} So there are two objects in the mut list, but `scavenge_mutable_list` wasn't able to find anything. This is curious, and it seems like a bug. Pretty much any program has this bug, `mut_list_size` and sum of objects found in the mut list never match. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14997 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler