• Simon Marlow's avatar
    Fix a bug in threadStackOverflow() (maybe #5214) · 734f1d48
    Simon Marlow authored
    If we overflow the current stack chunk and copy its entire contents
    into the next stack chunk, we could end up with two UNDERFLOW_FRAMEs.
    We had a special case to catch this in the case when the old stack
    chunk was the last one (ending in STOP_FRAME), but it went wrong for
    other chunks.
    
    I found this bug while poking around in the core dump attached to
    options and running the nofib suite: imaginary/wheel_sieve2 crashed
    with +RTS -kc600 -kb300.
    
    I don't know if this is the cause of all the symptoms reported in
    734f1d48
Threads.c 25.3 KB