this "fixes" #1038, in that the example runs in constant space, but
it's really only working around the problem. I have a better patch,
attached to ticket #1038, but I'm wary about tinkering with this
notorious bug farm so close to the release, so I'll push it after
6.8.1.
/* Used to avoid long recursion due to selector thunks
*/
lnat thunk_selector_depth = 0;
/* Used to avoid long recursion due to selector thunks
*/
lnat thunk_selector_depth = 0;
-#define MAX_THUNK_SELECTOR_DEPTH 8
+#define MAX_THUNK_SELECTOR_DEPTH 16
static StgClosure * eval_thunk_selector ( nat field, StgSelector * p );
static StgClosure * eval_thunk_selector ( nat field, StgSelector * p );