If your program is crashing, you should almost surely file a bug report, as outlined in Section 1.2.
This section suggests ways to Make Further Progress Anyway.
The first thing to establish is: Is it a garbage-collection (GC) bug? Try your program with a very large heap and a -Sstderr RTS flag.
If it crashes without garbage-collecting, then it is definitely not a GC bug.
If you can make it crash with one heap size but not with another, then it probably is a GC bug.
If it crashes with the normal collector, but not when you force two-space collection (-G1 runtime flag), then it probably is a GC bug.
If it is a GC bug, you may be able to avoid it by using a particular heap size or by using a -G1 runtime flag. (But don't forget to report the bug!!!)
ToDo: more here?