TeX Liveを2022から2024にアップデートしたところ、レイアウトがおかしくなりました。
犯人は\parskipコマンドでした。\parskipコマンドは段落間の距離を空けるコマンドです。段落間がやや開いていると、本文が読みやすくなるため、5ptほど空白を入れていました。
このコマンドはTeX Live 2022では期待通り動いていました。ところが、TeX Live 2024では\lstlistingsがおかしなことになります。
これは以前は次のようにレンダリングされていました。
どうも\parskipコマンドの実装を変えたことが悪い方に働いているようです。
結局\parskipコマンドを使わないことで解決しましたが、原因究明に休日の半日がつぶれる難儀なトラブルでした。