VOOZH about

URL: https://www.phoronix.com/news/Linux-6.19-Enables-MS-Ext

⇱ Linux 6.19 Goes Ahead And Enables Microsoft C Extensions Support - Phoronix


👁 Phoronix

Linux 6.19 Goes Ahead And Enables Microsoft C Extensions Support

Written by Michael Larabel in Linux Kernel on 3 December 2025 at 08:14 PM EST. 40 Comments
Last month I reported on Linux 6.19 looking to enable Microsoft C Extensions support throughout the Linux kernel with setting the -fms-extensions compiler option to allow Microsoft C Extensions when building the kernel. Linus Torvalds today merged that support without objections.

The Microsoft C Extensions allow for some non-standard C/C++ constructs within the GCC and LLVM/Clang compilers. They are named the Microsoft C Extensions for being found in some Microsoft header files and being honored by the Microsoft Visual C/C++ compiler.

The main emphasis on enabling the Microsoft C Extensions is for permitting use of a tagged struct or union anonymously in another struct/union. This can allow for some "prettier code" while past efforts to enable -fms-extensions for the Linux kernel everywhere ended up falling through.

But now as of tonight in the mainline Linux 6.19 Git kernel state, the option has landed along with some early usage of it. The Btrfs file-system code adapted as an example comes down to:

👁 Btrfs conversion example


More details for those interested via the Kbuild merge.

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.