diff options
author | Ryan Scott <ryan.gl.scott@gmail.com> | 2018-03-25 15:33:37 -0400 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2018-03-25 15:33:38 -0400 |
commit | 9a00bfba122cd7138892c934c9cc3376dc2abe98 (patch) | |
tree | 76dcebf0eb4372469008aaf0817af8019acf15ee /rts/RetainerProfile.c | |
parent | c16df6061abd33c67797b1cd676a980457f52533 (diff) | |
download | haskell-9a00bfba122cd7138892c934c9cc3376dc2abe98.tar.gz |
rts/RetainerProfile: Dump closure type if push() fails
While investigating #14947, I noticed that the `barf`ed
error message in `push()` doesn't print out the closure type that
causes it to crash. Let's do so.
Reviewers: bgamari, erikd, simonmar
Reviewed By: bgamari
Subscribers: alexbiehl, rwbarton, thomie, carter
Differential Revision: https://phabricator.haskell.org/D4525
Diffstat (limited to 'rts/RetainerProfile.c')
-rw-r--r-- | rts/RetainerProfile.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/rts/RetainerProfile.c b/rts/RetainerProfile.c index cad3bb40ef..42ddae3777 100644 --- a/rts/RetainerProfile.c +++ b/rts/RetainerProfile.c @@ -631,7 +631,7 @@ push( StgClosure *c, retainer c_child_r, StgClosure **first_child ) case IND: case INVALID_OBJECT: default: - barf("Invalid object *c in push()"); + barf("Invalid object *c in push(): %d", get_itbl(c)->type); return; } |