> 符号なし整数はオーバーフローしない

そんな事が決まっていたっけ?

> UCHAR_MAX==255の処理系では(unsigned char)-1==255となるべき

unsigned char に変換する前の -1 の全ビットが立っている保証はあったっけ?

> info[index].yyy[xxx]
> のことか?

そう。

> 漏れ的にはポインタに[]はあんまり使いたくない

ならこう書け。
(info + index)->yyy + xxx

> 仮引数*hogeをhoge[]と書くのも気持ち悪い

int main(int argc, char **argv)
と書く人ですか?
まあいいけど。