summaryrefslogtreecommitdiff
path: root/rts/sm/Evac.c
diff options
context:
space:
mode:
Diffstat (limited to 'rts/sm/Evac.c')
-rw-r--r--rts/sm/Evac.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/rts/sm/Evac.c b/rts/sm/Evac.c
index a8559e7e00..e8baebe553 100644
--- a/rts/sm/Evac.c
+++ b/rts/sm/Evac.c
@@ -542,8 +542,8 @@ loop:
return;
case FUN_STATIC:
- if (info->srt != 0) {
- evacuate_static_object(FUN_STATIC_LINK((StgClosure *)q), q);
+ if (info->srt != 0 || info->layout.payload.ptrs != 0) {
+ evacuate_static_object(STATIC_LINK(info,(StgClosure *)q), q);
}
return;