3 years ago, I used wiz-c for 16xxxx. it works good, but I can't create function array pointers for finite state machine implementations. and even if the variable parameters in the functions has const modifier, you can modify the variable, and the compiler doesnt give a warning. Though most of my initial projects were created using Wiz-c and all of them works efficiently.
since I moved to 18fxxxx series, now i am using MPLAB C18 and its very very good C compiler.