Fix a few GCC warnings
GCC 8 now generates warnings for incompatible function pointer casts [-Werror=cast-function-type]. Apparently there are a few of those in rts code, which makes `./validate` unhappy (since we compile with `-Werror`) This commit tries to fix these issues by changing the functions to have the correct type (and, if necessary, moving the casts into those functions). For instance, hash/comparison function are declared (`Hash.h`) to take `StgWord` but we want to use `StgWord64[2]` in `StaticPtrTable.c`. Instead of casting the function pointers, we can cast the `StgWord` parameter to `StgWord*`. I think this should be ok since `StgWord` should be the same size as a pointer. Signed-off-by:Michal Terepeta <michal.terepeta@gmail.com> Test Plan: ./validate Reviewers: bgamari, erikd, simonmar Reviewed By: bgamari Subscribers: rwbarton, thomie, carter Differential Revision: https://phabricator.haskell.org/D4673
Showing
- includes/rts/OSThreads.h 1 addition, 1 deletionincludes/rts/OSThreads.h
- rts/Hash.c 3 additions, 3 deletionsrts/Hash.c
- rts/Hash.h 1 addition, 1 deletionrts/Hash.h
- rts/StaticPtrTable.c 8 additions, 7 deletionsrts/StaticPtrTable.c
- rts/Task.c 3 additions, 1 deletionrts/Task.c
- rts/posix/OSThreads.c 1 addition, 1 deletionrts/posix/OSThreads.c
Loading
Please register or sign in to comment