Linux 5.18計劃從C89語言標準切換到C11/GNU11 C版本
在內核變化的背後,當Linus Torvalds有了動力,新的變化往往發生得更快,最新的例子是從C89語言標準切換到C11(GNU11)。這一變化現在有望在Linux 5.18合併窗口的早期進行。最近有關於Linux內核從C89轉向C11的討論非常熱烈。目前內核的C語言編程被限制在舊的C89標准上,而最新主線版本的目標是將其提升到更現代的C11。
由於Linux 5.15已經將GCC編譯器的版本要求提高到了GCC 5.1,他們可以安全地開始引入C11/GNU11語言特性,而不需要施加任何新的編譯器要求。
在快速修訂了用於將構建Linux內核的”-std=gnu89″目標改為”-std=gnu11″目標的補丁集之後,Linus Torvalds指出,他希望儘早將其拉入下一個合併窗口,以防其他拉動請求最終使用C11功能,等等。轉換到C11將發生在即將到來的周期即Linux 5.18。
現在有linux-kbuild的kbuild-gnu11分支,它將在早期被送入Linux 5.18的合併窗口。如果Linux 5.17在周日按時發布,該合併窗口將在下周啟動。
了解更多:
https://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git/log/?h=kbuild-gnu11