>なるわけないでしょ。どんなバグを想定してるの?
グローバルな一文字の変数は衝突しやすいし
衝突した事が分からない。
というDelphiのunitの仕様バグがもたらす典型的なバグ。

それから現状でPI, eが関数でなければならない理由は特にない。
system.pasに定数の定義に書き換えた所で誤動作するコードを書くことは考えにくい。

かといって定数を返す関数が全く無意味でもない。
他所で算出してコピペするよりも
initializeセクションで値をセットした方が保守性は高い。