いくつかのプレゼンテーションを見てみると、次の主張に出くわしました。JVMがクラスをロードすると、そのコンテンツを分析して、オペランドスタックのオーバーフローやアンダーフローがないことを確認できます。私は同じ主張をする多くの情報源を見つけましたが、それがどのように行われるかを特定していません。
静的分析を使用してこのような検証を行う方法は私にはわかりません。引数として値を取得し、それを使用して一連のポップを実行する(悪意のある)メソッドがあるとします。ロード時には、メソッドの呼び出し元によって指定された引数に依存するため、反復回数は不明です。したがって、実行時にのみ、アンダーフローがあるかどうかを判断できるはずです。ここで何が欠けていますか?