Liangxu Linux
Liangxu Linux
Nov 4, 2024 · Fundamentals

Unlocking GNU C Extensions: Zero‑Length Arrays, Variable‑Length Arrays, and More

This guide explains key GNU C extensions—including zero‑length and variable‑length arrays, case ranges, statement expressions, typeof, variadic macros, designated initializers, built‑in functions, and attribute syntax—showing how they differ from standard ANSI C and how to use them safely in Linux kernel development.

C extensionsGNU CLinux kernel
0 likes · 10 min read
Unlocking GNU C Extensions: Zero‑Length Arrays, Variable‑Length Arrays, and More
Liangxu Linux
Liangxu Linux
Aug 14, 2023 · Backend Development

Mastering GNU C Extensions: typeof, Zero‑Length Arrays, and More in the Linux Kernel

This article explains key GNU C extensions used in the Linux kernel—including typeof, zero‑length (flexible) arrays, case ranges, labeled initializers, variadic macros, function and variable attributes, built‑in functions, asmlinkage, and UL suffixes—showing why they exist, how to use them safely, and providing concrete code examples.

GNU CLinux kernelbuiltin function
0 likes · 13 min read
Mastering GNU C Extensions: typeof, Zero‑Length Arrays, and More in the Linux Kernel
Liangxu Linux
Liangxu Linux
Jun 22, 2023 · Backend Development

Mastering GNU C Extensions: typeof, Flexible Arrays, Case Ranges and More in the Linux Kernel

This article explains essential GNU C extensions used in the Linux kernel—including typeof, zero‑length (flexible) arrays, case range labels, designated initializers, variadic macros, function and variable attributes, built‑in functions, asmlinkage, and UL suffixes—showing why they matter and how to apply them safely.

AttributesC extensionsGNU C
0 likes · 13 min read
Mastering GNU C Extensions: typeof, Flexible Arrays, Case Ranges and More in the Linux Kernel
Liangxu Linux
Liangxu Linux
Mar 18, 2023 · Fundamentals

Mastering GNU C Extensions: typeof, Zero‑Length Arrays, Case Ranges and More in the Linux Kernel

This article explains key GNU C extensions used throughout the Linux kernel—including typeof, zero‑length (flexible) arrays, case range labels, designated initializers, variadic macros, function and variable attributes, built‑in functions, asmlinkage and UL suffixes—showing why they exist and how to apply them safely with concrete code examples.

GNU CLinux kernelbuiltins
0 likes · 13 min read
Mastering GNU C Extensions: typeof, Zero‑Length Arrays, Case Ranges and More in the Linux Kernel