GKRootWire
Security ICE Signs $2M Deal for Zero-Click Phone Hacking ToolSecurity Attackers Exploit Critical Elementor Pro Bug to Hijack WordPress SitesAI ChatGPT Goes Down, Serves 404 Errors to UsersAI ChatGPT and Codex Suffer Widespread OutageAI Google DeepMind's WeatherNext 3 Sharpens AI Weather ForecastingAI Google's New AI Weather Model Sharpens Storm ForecastsSecurity ICE Signs $2M Deal for Zero-Click Phone Hacking ToolSecurity Attackers Exploit Critical Elementor Pro Bug to Hijack WordPress SitesAI ChatGPT Goes Down, Serves 404 Errors to UsersAI ChatGPT and Codex Suffer Widespread OutageAI Google DeepMind's WeatherNext 3 Sharpens AI Weather ForecastingAI Google's New AI Weather Model Sharpens Storm Forecasts
Dev Tools

GCC Explores Trampoline-Free Nested Functions Using Wide Pointers

A compiler engineer details progress on making GCC's nested functions safer and more portable without relying on executable trampolines.

GCC has long supported nested functions as a non-standard C extension, but implementing them typically requires generating small executable code stubs called trampolines at runtime. This approach causes headaches on systems with strict memory protections, like those enforcing non-executable stacks or W^X policies.

A new writeup continues earlier work exploring an alternative: using 'wide pointers' that bundle a function pointer with its enclosing context, avoiding the need to generate code on the stack at all. This follow-up post digs deeper into the technical tradeoffs of the approach, refining how these pointers are represented and passed around in generated code.

While niche, this is the kind of low-level compiler engineering that quietly improves security and portability for anyone using GCC extensions.

Why it matters: Trampoline-based nested functions are a long-standing source of friction on hardened systems (executable-stack restrictions, CFI, sandboxes), so a trampoline-free design could make this GCC feature usable in more security-conscious environments. It's a good example of compiler-level changes rippling into real-world system security.

Sources: Hacker News