Re:_FreeBSD_14.0-RELEASE-p1をbuidlworld する際のコンパイルエラーについて

From: Norikatsu Shigemura <nork_at_ninth-nine.com>
Date: Sun, 03 Dec 2023 16:41:25 UTC
重村法克です。

On 西暦2023/12/03 21:13:57, Yoshida Kazuhito wrote:
> FreeBSD 12.4-RELEASE-p7のシステムをFreeBSD 14.0-RELEASE-p1へ一気に
> バージョンアップしようとしているのですが、buildworldでコンパイルエラーと
> なるため悩んでいます。

自分も最近知った…というか、以前から話は聞いてた記憶はあったのですが、やっと意識したというか、
一部の開発者には知られてる問題だそうです。状況が些細なので対策は放置されてるという話を聞いてます。

具体的な対策は下記の通りとなります。
/usr/src/usr.sbin/jail/Makefile に WARNS=1 を入れてビルドしてください。
なおアップデート後は不要な対応となります。

恒久的対応とそれにより得られるメリットが無くて放置されています。
・12系LLVM→14系LLVMとの組み合わせで発生する。
・13系/14系LLVM→14系LLVMでは発生しない。
・13系/14系LLVMでは警告出ないことから、12系LLVMの問題。
・上記理由とトリガーとなった jaillex.c (jaillex.l より生成)が別段間違ってるわけでもない(13・14ではOKなので)。
・ワークアラウンドとして WARNS=1 はありだけど、恒久的対策としては無意味(13・14ではOKなので)。
・普通12→13→14と順々にバージョンアップするから普通は問題になることが無い。

以上よろしくお願いいたします。

-- 
Norikatsu Shigemura <nork@ninth-nine.com>