summaryrefslogtreecommitdiff
path: root/rts/Profiling.c
diff options
context:
space:
mode:
authorErik de Castro Lopo <erikd@mega-nerd.com>2016-05-18 06:33:03 +1000
committerErik de Castro Lopo <erikd@mega-nerd.com>2016-05-18 06:33:03 +1000
commit33c029dd77888ee5f9b1c7ce8884c982e0428adf (patch)
tree6c38a3f4c4dcc2fb20a8ce4a1c9d1dc520ec6f9d /rts/Profiling.c
parent5d80d14196ef048ffe037b2d92af2e9af0cb9e19 (diff)
downloadhaskell-33c029dd77888ee5f9b1c7ce8884c982e0428adf.tar.gz
rts: More const correct-ness fixes
In addition to more const-correctness fixes this patch fixes an infelicity of the previous const-correctness patch (995cf0f356) which left `UNTAG_CLOSURE` taking a `const StgClosure` pointer parameter but returning a non-const pointer. Here we restore the original type signature of `UNTAG_CLOSURE` and add a new function `UNTAG_CONST_CLOSURE` which takes and returns a const `StgClosure` pointer and uses that wherever possible. Test Plan: Validate on Linux, OS X and Windows Reviewers: Phyx, hsyl20, bgamari, austin, simonmar, trofi Reviewed By: simonmar, trofi Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2231
Diffstat (limited to 'rts/Profiling.c')
-rw-r--r--rts/Profiling.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/rts/Profiling.c b/rts/Profiling.c
index f6430ae41a..a4fc281967 100644
--- a/rts/Profiling.c
+++ b/rts/Profiling.c
@@ -1107,9 +1107,9 @@ fprintCCS_stderr (CostCentreStack *ccs, StgClosure *exception, StgTSO *tso)
const uint32_t MAX_DEPTH = 10; // don't print gigantic chains of stacks
{
- char *desc;
- StgInfoTable *info;
- info = get_itbl(UNTAG_CLOSURE(exception));
+ const char *desc;
+ const StgInfoTable *info;
+ info = get_itbl(UNTAG_CONST_CLOSURE(exception));
switch (info->type) {
case CONSTR:
case CONSTR_1_0: