なるほど。無茶が残ってるんですね。
あと、
char sz[42];
strcpy(sz,"HOGE");
*(sz+2)='C';
が問題ないのは分かりますが、
char *sz;
sz="HOGE";
*(sz+2)='c';
って大丈夫なんでしょうか?
これまたconstなところを書き換えようとしているように見えるのですが、BCCは何らモンクを言いません・・・。