type TMyType = (mtFirst, mtSecond = mtFirst + 1);

って構文って気持ち悪いと思いませんか?
だって「mtFirst + 1」って、列挙型と整数型を足し算してるんすよ、本来だったら
文法エラーでしょ。

type TMyType = (mtFirst, mtSecond = Ord(mtFirst) + 1);

だったらまだガマンできるんだが。
多少ソースが長くなっても硬派な所を貫いて欲しかった… > 某国