GCC15 C 編譯器如果沒有使用 -std 選項指定,編譯時使用的標準為 C23,bool 在 C23 成為關鍵字,所以自定義 bool 的做法在 GCC15 會編譯失敗。目前上遊還沒有確定解法,我只是選一個比較簡單的改法先讓程式能夠編譯成功,然後再看上遊會怎麼修改再進行修正。
#if defined __STDC__ && defined __STDC_VERSION__ && __STDC_VERSION__ <= 201710L
typedef unsigned int bool;
#endif
也就是使用 __STDC_VERSION__ 進行判斷。