[GHC] #16303: checkStack sanity check fails

GHC ghc-devs at haskell.org
Mon Feb 11 08:21:19 UTC 2019


#16303: checkStack sanity check fails
-------------------------------------+-------------------------------------
           Reporter:  osa1           |             Owner:  (none)
               Type:  bug            |            Status:  new
           Priority:  normal         |         Milestone:
          Component:  Compiler       |           Version:
           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:
-------------------------------------+-------------------------------------
 checkStackChunk() currently has a commented-out assertion:

 {{{
 void
 checkStackChunk( StgPtr sp, StgPtr stack_end )
 {
     StgPtr p;

     p = sp;
     while (p < stack_end) {
         p += checkStackFrame( p );
     }
     // ASSERT( p == stack_end ); -- HWL
 }
 }}}

 I realized a while ago that if I enable it, it fails in some cases, so I
 asked
 Simon Marlow about this. Quoting:

 > I don't know, but blame says it was disabled by Hans-Wolfgang Loidl as
 part of
 > the GUM merge 18 years ago. I suggest just enabling it and debug
 whatever goes
 > wrong.

 This ticket is to enable the assertion and fix bugs.

 To reproduce, run the test suite:

 {{{
 $ make EXTRA_HC_OPTS='-debug -rtsopts' WAY=sanity
 }}}

 Tests that trigger the assertion:

 - annrun01
 - T10508_api
 - dynCompileExpr

 Tried with GHC HEAD

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/16303>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list