Pascal ではオーバーフロー境界として 100000000 はどのような意味を持ちますか?

Pascal ではオーバーフロー境界として 100000000 はどのような意味を持ちますか?

最近、職場でバグのないソフトウェアについて会話をしたところ、TeX(技術的には間違っているかもしれないが、実質的にバグがないと考えられている)についての議論が起こりました。TeXのソースコードは「TeX: プログラム」の内部を見て、一目見ても二目見ても不明瞭だった手続きを 1 つ選びました。それは の実装でありprint_int、その本の 28 ページの §65 にあります。そのドキュメントには次のように書かれています。

@ The following procedure, which prints out the decimal representation of a given integer |n|, has been written carefully so that it works properly if |n=0| or if |(-n)| would cause overflow. It does not apply |mod| or |div| to negative arguments, since such operations are not implemented consistently by all \PASCAL\ compilers.

手順自体は次のようになります (コードは WEB ソースから取得)。

procedure print_int(@!n:integer); {prints an integer in decimal form}
var k:0..23; {index to current digit; we assume that $|n|<10^{23}$}
@!m:integer; {used to negate |n| in possibly dangerous cases}
begin k:=0;
if n<0 then
  begin print_char("-");
  if n>-100000000 then negate(n)
  else  begin m:=-1-n; n:=m div 10; m:=(m mod 10)+1; k:=1;
    if m<10 then dig[0]:=m
    else  begin dig[0]:=0; incr(n);
      end;
    end;
  end;
repeat dig[k]:=n mod 10; n:=n div 10; incr(k);
until n=0;
print_the_digs(k);
end;

アルゴリズム自体は非常に理解しやすいのですが (結局のところ、単に数字を印刷しているだけです)、当時の Pascal コンパイラのコンテキストで 100000000 という数字がどのような意味を持つのか理解できませんでした。ドキュメントにはオーバーフローについて触れられていますが、オーバーフローは「10 の累乗」境界ではなく「2 の累乗」境界で発生すると予想されます。

この数字の説明や意味は何ですか? これはコンパイラまたは言語標準の癖ですか?

関連情報