Image courtesy of embedded.com
MISRA C:2025 Update — What Changed and How to Migrate Your Codebase
MISRA C:2025 introduces 12 new rules targeting modern C language features, retires 8 obsolete rules, and for the first time provides formal guidance on use of C11 and C17 features in safety-critical embedded development.
MISRA C:2025: The Key Changes
MISRA C has been the de facto embedded C coding standard for safety-critical development since 1998. The 2025 update is the most significant revision since MISRA C:2012, reflecting the need to address C11 and C17 language features that are now in widespread compiler use but were not covered by existing rules.
New Rules for Modern C Features
12 new rules address: _Generic expressions (Rule 1.X series); _Static_assert usage; atomic types and operations; and thread-local storage. The atomic operations rules are particularly significant — they address a genuine safety hazard where incorrect use of _Atomic can silently introduce race conditions in interrupt-driven code.
The thread-local storage rules are more advisory than mandatory for most embedded targets, but are relevant for asymmetric multiprocessor systems where thread-local semantics interact with hardware-specific memory models.
Retired Rules
8 rules from MISRA C:2012 have been retired, primarily rules that targeted undefined behaviour that was clarified by the C11 and C17 standards. The most notable retirement: the rules restricting use of inline functions, which are no longer necessary given that C11 standardised inline semantics.
Compliance Migration Guidance
The update includes a migration guide — the first time MISRA has provided formal guidance on transitioning between editions. The migration guide categorises each change as: no action required; additional analysis recommended; or code change required. For teams currently using MISRA C:2012 in certified products, the migration guide clarifies the compliance posture of existing code against the new edition.
The practical recommendation from the compliance working group: certifications achieved against MISRA C:2012 are not invalidated by the 2025 update; the new edition applies to new development and modifications after a transition date specified in your development plan.