Fix some warnings from the Debian build environment:
Update gpc to latest (and final) version, now under MIT license
Alternate approach to Freetype 2.13.3 change, use a typedef instead of a cast
The compiler complains about implicit casts from char* to unsigned char*, but not explicit casts. This is what set this all in motion. I maintain the Debian package for AGG and Debian is switching to Freetype 2.13.3 from Freetype 2.12.1. I don't know why the Freetype developers think that it is OK to have an API change on a patch release. Explicit casting from unsigned char* to char* or from char* to unsigned char* is legal and does not generate an error. I have tested both directions with both versions...
I have compiled r142 with Freetype 2.12.1 and Freetype 2.13.3 and it works fine. How does casting to char* cause a problem?
FreeType changed a char* to unsigned char*, add appropriate cast
Forgot several switch case fallthrough.
Fixed a large number of warnings when compiled under C++23 with -Wall