diff options
author | Siddharth Bhat <siddharth.bath@tweag.io> | 2019-07-01 12:33:36 +0200 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2019-07-04 21:22:00 -0400 |
commit | d7f7e1ed6eb03045ee9b5a185666ea206a76bbb6 (patch) | |
tree | 60d14fb7a68d2a4bb8f715d06aa728b24b1a4fcf /rts/Printer.c | |
parent | f7a2e709e83078164ef061239f9efc643a36d1b0 (diff) | |
download | haskell-d7f7e1ed6eb03045ee9b5a185666ea206a76bbb6.tar.gz |
Make printer untag when chasing a pointer in a RET_FUN frame
This is to mimic what `Scav.c` does. This should fix a crash in
the printer.
Diffstat (limited to 'rts/Printer.c')
-rw-r--r-- | rts/Printer.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/rts/Printer.c b/rts/Printer.c index 996199ea52..15404e1205 100644 --- a/rts/Printer.c +++ b/rts/Printer.c @@ -613,7 +613,7 @@ printStackChunk( StgPtr sp, StgPtr spBottom ) StgRetFun *ret_fun; ret_fun = (StgRetFun *)sp; - fun_info = get_fun_itbl(ret_fun->fun); + fun_info = get_fun_itbl(UNTAG_CLOSURE(ret_fun->fun)); debugBelch("RET_FUN (%p) (type=%d)\n", ret_fun->fun, (int)fun_info->f.fun_type); switch (fun_info->f.fun_type) { case ARG_GEN: |