Isn't the arrival of really cheap ARM-s, like M0, puts PIC and AVR and the like in legacy category you won't ever look again? Assuming you can match the hardware side: UARTs, counters, voltage, etc. the power consumption of today ARM-s made on modern process is really good and programming experience is so much better - not to deal with PIC brain-damaging architecture is so relieving.
People say, PIC-s are very robust and can handle a lot with theirs bare pin-s, but still, does it really matter most of the times? My experience with Hitech is that it generates significantly smaller code. Not sure about PICC bugs (I used Windows version), but SDCC created broken program (infinite loop) from the same code. Anyway, my experience with PIC was episodic and the bug was fixed very fast by SDCC team.
