Design of Enhanced Pointer Ownership Model for C
• Technical Report
By
Publisher
Software Engineering Institute
CMU/SEI Report Number
CMU/SEI-2025-TR-008DOI (Digital Object Identifier)
10.1184/R1/29971765Topic or Tag
Abstract
This report describes the design for a new temporal memory safety model for C code and an implementation to enforce it. The design improves on the CERT Pointer Ownership Model with enhancements including the use of large language models to complete a per-program model; an improved mechanism to prevent use-after-free errors, inspired by Rust’s borrow checker and object lifetimes; improved function argument handling with a new abstraction of diligent or producer arguments; handling structs, unions, or arrays that contain pointers; and correct handling of ambiguity in assignment operations. This report details the research approach and early stage results of designing this model, its extension to C’s type system, the tool design methodology, and the design and initial engineering of lightweight specification and validation tools.