Real Time Embedded Articles

Discover practical guides, expert advice and industry updates on embedded software, memory-safe C and C++, and software engineering.

Slaying UB #30: When 31 Characters Aren’t Enough

C has historically allowed implementations to treat external identifiers as identical if they differ only after the first 31 characters. Proposal N3911 removes this source of undefined behaviour, making every character significant and requiring diagnostics for identifiers that exceed an implementation's documented limit.

Killing Ghosts in C: Removing UB #28 and #29

C23 made two cases of undefined behaviour involving invalid identifier characters impossible to trigger. Discover how proposal N3904 removes these obsolete rules and clarifies how compilers should diagnose invalid identifiers.

Facing the Memory Safety Crisis: What It Means for Developers, Leaders, and Companies

In today’s rapidly evolving tech landscape, memory safety has become a critical concern for developers, team leaders, and organisations alike.

Memory Safety Is More Than a Language Choice

In the world of software development, it’s tempting to believe that switching programming languages can solve deep-seated issues within a project.